Saltar al contenido

Plantillas

Interpolación con text/template de Go en una presentación: valores, diapositivas generadas, números de página, inclusiones.

La presentación es una text/template de Go, evaluada antes de analizar el Markdown. Todo lo que ofrece el lenguaje de plantillas de Go (acciones, tuberías, if, range, with, variables) funciona en una presentación.

Datos

El punto de la plantilla contiene las claves del front matter, luego las claves de su mapa data:, y luego los datos indicados en la línea de comandos o en slides.yaml, cada uno sobrescribiendo al anterior.

---
marp: true
title: Quarterly review
data:
  team: Platform
---

# {{ .title }}

Presented by the {{ .team }} team.

Desde la línea de comandos:

OpciónAporta
--data file.yamlun archivo YAML o JSON de datos (repetible)
--set key=valueun valor (repetible)

Generar diapositivas

Todo el cuerpo es una plantilla, así que un range que escribe --- escribe diapositivas:

{{ range .releases }}
---

# {{ .version }}

{{ range .changes }}- {{ . }}
{{ end }}
{{ end }}

Página y total

{{ page }} y {{ total }} son el número de la diapositiva y el número de diapositivas. Solo se conocen una vez dividida la presentación, así que se rellenan entonces: una presentación generada cuenta las diapositivas que generó.

<!-- footer: "{{ page }} / {{ total }}" -->

Incluir

{{ include "parts/agenda.md" }} inserta otro archivo, relativo a la presentación.

El código se deja tal cual

Los bloques de código y los fragmentos de código en línea se apartan antes de ejecutar la plantilla y se restituyen sin cambios, de modo que una diapositiva sobre plantillas de Go puede mostrar {{ .Name }} sin escaparlo.

Desactivarlas

--no-template lee la presentación como Marp plano: {{ es texto.

Creada el por tannevaled

Modificada el por tannevaled