Custom templates
Temario generates presentations by injecting content into a LibreOffice Impress (ODP) template. You can use any ODP as the base — with your own colours, typography and logos.
How it works
Section titled "How it works"The ODP template is a normal .odp file. Temario extracts its slides as
XML fragments and reuses them for each slide type (cover, bullets, code, etc.).
The original text is replaced with your YAML content; the visual design is preserved.
1. Prepare your base ODP
Section titled "1. Prepare your base ODP"Your template must have at least these slides (in any order,
as indices are configured in template.yaml):
| Slide | Use |
|---|---|
| Cover | Course title, unit and level |
| Objectives | List of objectives (bullet points) |
| Index | List of sections |
| Intro / text | Free text slide / section intro |
| Content | Bullets, code, terminal, etc. |
| Conclusion | List of conclusions |
| References | List of references with URLs |
| Contact | Copied without modification |
| License | Copied without modification |
Design it directly in LibreOffice Impress. The only requirement is that
text styles have identifiable names (e.g. T1, T10, L4).
2. Import the template
Section titled "2. Import the template"Place the .odp in courses/<your-course>/template/ and run:
./temario import courses/my-course/template/my-template.odpTemario analyses the ODP and generates courses/my-course/template/template.yaml
with the detected slide indices and style names.
3. Review template.yaml
Section titled "3. Review template.yaml"meta: nombre: my-template fichero: my-template.odp
diapositivas: # 0-based indices in the ODP portada: 0 objetivos: 1 indice: 2 intro: 3 contenido: 10 conclusion: 19 referencias: 20 contacto: 21 licencia: 22
estilos: # style names in the ODP portada_titulo: T1 portada_unidad: T2 titulo: T10 lista_obj: L3 lista_contenido: L4 span_contenido: T6Edit the indices manually if auto-detection is not correct — open the ODP in LibreOffice and identify the (0-based) number of each slide.
4. Build with your template
Section titled "4. Build with your template"From that point ./temario build will use your template automatically.
No need to specify it explicitly:
./temario build courses/my-courseSharing a template between courses
Section titled "Sharing a template between courses"If you want multiple courses to use the same template, copy the ODP and
template.yaml to each of them, or create a base course and copy its
template/ to the others.