WIP/TODO: An alphabetically ordered list of all possible meta options with description and where the meta option comes from (Reveal, pandoc, decker itself) and if it needs 0/1, true/false, "true"/"false", a String, number etc
This page provides an overview of the meta data options available in Decker.
In Decker you can configure various options via the [YAML](https://yaml.org/) format. These configurations are also called **Meta Data**.
- affiliation
To see which of these originate directly from **Reveal.js** have a look here: [https://revealjs.com/config/](https://revealjs.com/config/)
- align-global
- author
- author-meta
These meta data variables can be specified in different places. In order of increasing precedence these are:
- authors
- autoSlide
* the `decker.yaml` file that is read from the project's root directory
- autoSlideStoppable
* additional meta data files specified in the meta data variable `meta-data`
- background-image
* the meta data sections of the slide source Markdown file
- backgroundTransition
- bibliography
Meta data is hierarchical but most variables are defined at the top level. A notable exception are variables that are used to set *local path* values (see [Local paths](home#File-paths)) in the slide template. These path values are located in the `template` namespace. For example, the value for the optional title teaser image is provided in the variable `template.title-teaser`.
Inside a YAML file or a YAML section of a file meta variable values are defined as follows:
```
template:
title-teaser: /images/teaser.png
```
If defined at the top of a markdown file, the file will begin with e.g.
```
---
author: Decker Author
template:
title-teaser: /images/teaser.png
...
---
# First slide
...
```
## Table of Contents
<details>
<summary>Click to display</summary>
[[_TOC_]]
</details>
## A
### affiliation
<details>
Affiliation can be used to define the affiliation of the author(s). E.g. the university or company.
default horizontal alignment for various slide elements (defaults to `left`)
```
align-global: "left" | "center" | "right"
```
</details>
### author
<details>
displays a set string eg. `Isaac Asimov` underneath the date on the title slide
```
author: "Isaac Asimov"
```
</details>
### autoSlide
<details>
Number of milliseconds between automatically proceeding to the next slide, disabled when set to 0, this value can be overwritten by using a data-autoslide attribute on your slides.
The following example would continue to the next slide after 5 seconds.
```
autoSlide: 5000
```
</details>
### autoSlideStoppable
<details>
Stop auto-sliding after user input
```
autoSlideStoppable: "true" | "false"
```
</details>
## B
### backgroundTransition
<details>
- Transition style for full page slide backgrounds (defaults no `none`)
Define custom CSS properties for the border of h2 highlight blocks such as `.question`. ([see here](https://gitlab2.informatik.uni-wuerzburg.de/decker/decker/-/wikis/Text-Formatting#highlight-blocks))
- checkOverflow
- controls
- csl
```
- date
border-decoration-width: 20px
- date-meta
border-decoration-padding: 10px
- decker-engine.base-url
border-decoration-style: solid
- decker-engine.deck-id
```
- defaultTiming
</details>
- dictionary:
## C
### center
<details>
Move content vertically to the center of a slide
```
center: "true" | "false"
```
</details>
### chalkboard
<details>
Define the `.json` file where chalkboard notes will be saved to and loaded from.
```
chalkboard: "chalkboard-file.json"
```
</details>
### chart
<details>
Toggle if charts can be used.
```
chart: "true" | "false"
```
</details>
### checkOverflow
<details>
mark overflowing slides with a red border (defaults to `false`)
Define a `.csl` (Citation Style Language) file that is used for citations.
</details>
## D
### date
<details>
Displays a set string eg. `2019-10-28` on the title slide. If provided with the string `"today"` it will display the date on which the HTML file was created.
```
date: "11.11.2020"
```
```
</details>
### date-meta
<details>
HTML document header meta data. `date` alone does not add a date to the HTML document header. `date-meta` does not set a date on the title slide.
</details>
### decker-engine
<details>
For more details on this function see [Audience Questions](Audience-Questions)
The audience of a deck can annotate slides with questions. The questions
are aggregated on a server and are visible by all audience members and
the author.
The slide author can later choose to address the questions by changeing
or extending the information in the deck.
To enable this feature a deck must specify the URL of a Decker Engine
Allow a language dictionary to translate UI elements. This is a work in progress and will be extended. Language can be switched with the option `lang` (see below).
```yaml
de:
de:
exam:
exam:
solution: Lösung
solution: Lösung
...
@@ -60,22 +285,154 @@ WIP/TODO: An alphabetically ordered list of all possible meta options with descr
...
@@ -60,22 +285,154 @@ WIP/TODO: An alphabetically ordered list of all possible meta options with descr
qmi-drag-hint: Drag items from here...
qmi-drag-hint: Drag items from here...
qmi-drop-hint: ...and put them here into the correct category.
qmi-drop-hint: ...and put them here into the correct category.
```
```
- embedded
</details>
- font-size-base
- fragmentInURL
## E
- fragments
- hash
### embedded
- header-includes
<details>
- height
Flags if the presentation is running in an embedded mode, i.e. contained within a limited portion of the screen.
- help
- hideAddressBar
```
- hideCursorTime
embedded: "true" | "false"
- hideInactiveCursor
```
- highlighting-css
</details>
- highlightjs
- include-after
### exclude-directories
- include-before
- jupyter
<details>
Exclude directories that decker should not consider for watching and compiling.
```
exclude-directories:
- dirA
- dirB
# OR
exclude-directories: [dirA, dirB]
```
</details>
## F
### font-size-base
<details>
Set font size in the whole presentation. Relative font sizes (such as `.small` will be based upon this setting)
```
font-size-base: 30px
```
</details>
### fragmentInURL
<details>
```
fragmentInURL: "true" | "false"
```
Example of fragments in URLs
1. localhost:8888/example-deck.html#/1/0/**-1** - no fragment
2. localhost:8888/example-deck.html#/1/0/**0** - 1st fragment
3. localhost:8888/example-deck.html#/1/0/**1** - 2nd fragment
</details>
### fragments
<details>
Use .fragment to reveal slides incrementally (defaults to `"true"`). See [Slide-Layout#fragments](Slide-Layout#fragments)
</details>
## H
### hash
<details>
add the current slide number to the URL hash so that reloading the page or copying the URL will return you to the same slide. Defaults to `true`
```
hash: "true" | "false"
```
</details>
### height
<details>
Set the height of a slide deck
```
height: "1080"
```
</details>
### help
<details>
Display a help overlay on `?` press (defaults to `true`)
```
help: "true" | "false"
```
</details>
### hideAddressBar
<details>
hides the address bar on mobile devices
```
hideAddressBar: "true" | "false"
```
</details>
### hideCursorTime
<details>
Time until cursor will be hidden in a presentation (in ms)
```
hideCursorTime: 2000
```
</details>
### hideInactiveCursor
<details>
hide inactive cursor. To deactivate remove `hideCursorTime` and set to `false` (defaults to `true`)
</details>
### highlightjs
<details>
- The Meta-Option `highlightjs` controls which code highlighting is used
- If not set, `pandoc` highlighting will be used.
- If `highlightjs: style` is specified, decker will disable `pandoc` code
highlighting and instead use `highlighjs`, with the CSS style
file `style.css`
- The following styles are supported:
- `atom-one-dark` and `atom-one-light`
- `solarized-dark` and `solarized-light`
- `xcode`
- `zenburn`
```
highlightjs: "atom-one-light"
```
</details>
### history
<details>
add entries to the browser's history for every slide visited (defaults to `false`)
</details>
## I
## J
### jupyter
<details>
```
```
jupyter:
jupyter:
kernelspec:
kernelspec:
...
@@ -89,36 +446,235 @@ jupyter:
...
@@ -89,36 +446,235 @@ jupyter:
nbformat: 4.0
nbformat: 4.0
nbformat_minor: 2.
nbformat_minor: 2.
```
```
- keyboard
</details>
- keywords
- lang
## K
- loop
- margin
### keyboard
- margin-columns
<details>
- mario
allow the use of [keyboard shortcuts](https://gitlab2.informatik.uni-wuerzburg.de/s334445/decker-struktur-wiki/-/wikis/Decker-Presentation-Manual#keyboard-shortcuts) to navigate the presentation (defaults to `"true"`)
- math
</details>
- mathMacros
- maxScale
### keywords
- menu
<details>
- minScale
HTML document header meta data
- mouseWheel
</details>
- navigationMode
- overview
## L
- parallaxBackground
### lang
<details>
changes the language of HTML content by setting to the corrosponding ISO Language Code (eg. `de`)
```
lang: "de"
```
</details>
### loop
<details>
begin anew after the last slide (defaults to `false`)
</details>
## M
### margin
<details>
Set the border margin (defaults to `0`)
</details>
### margin-columns
<details>
Column spacing, in same awkward unit as reveal's margin which is fraction of space. Beware, does strange things if set too large.
</details>
### mario
<details>
Use Mario Botsch's CSS for the slides (defaults to `false`) 🚧
</details>
### mathMacros
<details>
Define custom LaTeX macros. Beware: will disable the macros that are currently defined per default in the `deck.html` template. If these are required then you currently need to copy those.
Works only in `decker.yaml` and NOT in a single slide deck!
The `"|"` signifies the *YAML text block syntax*. This is needed for the `mathMacros` option
```
mathMacros: |
{
R: "{{\\mathrm{{I}\\kern-.15em{R}}}}",
laplace: "{\\Delta}",
sig: "{\\Sigma}"
}
```
</details>
### maxScale
<details>
Bounds for largest possible scale to apply to content.
```
maxScale: 0.5
```
</details>
### menu
<details>
allow users to display the menu (defaults to `true`)
displays a set string eg. `The Decker Experience` on a added a title slide at the start of a presentation
- touch
</details>
- transition
- transitionSpeed
</details>
- vertical-slides
- viewDistance
### totalTime
<details>
Divide the set amount of time by the slide count and present a timer in the speaker view with the average duration to spend on each slide (defaults to ``)
</details>
### touch
<details>
Use swipe gestures to navigate slides (defaults no `"true"`). Must be defined in the corresponding .yaml file.
| `slide`: Slide between backgrounds |  |
| `convex`: Slide at a convex angle |  |
| `concave`: Slide at a concave angle |  |
| `zoom`: Scale the incoming slide up so it grows in from the center of the screen |  |
</details>
### transitionSpeed
<details>
change the speed of a slide transition (defaults to `default`). Can be set to `slow`, `fast` or `default`
Number of slides away from the current that are visible
```
viewDistance: 3
```
</details>
## W
### whiteboard
Define CSS for the whiteboard
- whiteboard-active-color
- whiteboard-active-color
- whiteboard-background-color
- whiteboard-background-color
- whiteboard-icon-size
- whiteboard-icon-size
- whiteboard-inactive-color
- whiteboard-inactive-color
- width
<details>
</details>
### width
<details>
Define a width for the slide deck
```
width: 1920
```
</details>
### write-back
<details>
The `write-back` option enables auto-formatting of markdown source files. This works via pandoc writing back a formatted markdown document to the source file.
```yaml
write-back:
enable: true | false
line-columns: 80
line-wrap: auto|none|preserve
```
</details>
# WIP: List of deprecated/outdated options
The options here need clarification!
This section will be removed once all deprecated or outdated options in the above sections have been found.