YAML-Dateien

Verzeichnisbezogene Parametern für mdmachine

C. Bienmüller

2025-08-12

Einstellungen, die nicht nur einzelne Markdowndateien betreffen werden in eigenen YAML-Dateien untergebracht. Diese Konfigurationen finden durchgehend als key:value Pärchen statt.

Vorsicht: Diese Dateien werden nur während einer Konvertierung ausgewertet. Nachträgliche Änderungen erfordern eine händische Neu-Konvertierung - z.B. mit mdmachine.py -u -f (-f für force).

Es gibt zwei Dateien, die automatisch ausgewertet werden.

mdm_dir.yaml

Diese Datei enthält Parameter für das Verzeichnis, in dem sie selbst steht. Primär wird damit der Inhalt der _mdm_sidebar_.html gesteuert.
Eine Demodatei kann man auf der Kommandozeile mit mdmachine -d anfordern.

m²_indexfilename
z.B. xyz.html
als Alternative zur index.html, als der Datei, die beim Betreten des Verzeichnisses aufzurufen ist. Wenn weder dieser Parameter, noch eine index.html existiert, dann wird der Verzeichnisinhalt nicht in der Sidebar-Navigation aufgeführt.
m²_overridetitle
Demoinhalte
Eigentlich sollte als Verzeichnistitel der Titel der Datei m²_indexfilename bzw. der index.html genommen werden. Dies kann hier übersteuert werden (kann inkonsistent wirken, wenn es nicht nur eine Kürzung ist)
m²_subdirprio
{ High | Low }
Wird damit in der sidebar des übergeordneten Verzeichnisses einsortiert. Dort werden High/normal/Low in drei Blöcken, jeweils in sich alphabetisch sortiert angeordnet im Format Fett/normal/kursiv.
m²_links
ist ein array of dicts (welche link, title und hover als keys enthalten).
Die Links werden am Ende der Sidebar als einzelne Links aufgeführt.
title ist der Anzeigename
hover wird angezeigt, wenn die Maus über den Link gleitet.
Anzahl: Kein Limit…
Bsp:
m²_links:
    - link:  'http://example.com'
      title: 'Example-homepage'
    - link:  'https://www.google.com'
      title: 'Let´s Search something'
      hover: 'go to google'

mdm_root.yaml

Diese Datei liegt entweder im aktuellen Verzeichnis oder einem der Elternverzeichnissen. Das erste gefundene wird verwendet, das Verzeichnis, das mdm_root.yaml enthält wird als “root”, also als Wurzel der Verzeichnisstuktur aus Sicht der Dokumente angesehen.

m²_fixlinks
wie oben bei “m²_links”.

Sichtbarkeit der Links: Sie sind in der Sidebar neben jeder Seite dieses und aller untergeordneten Verzeichnisse sichtbar!

Die folgenden Parameter haben den angegebenen Standardwert, wenn sie nicht angegeben werden.

m²_lang:
“de-DE”
Standardsprache, die in HTML als lang festgelegt wird. Kann in einer Markdowndatei mit lang überschrieben werden.
m²_cssfile_main:
‘https://www.bienmueller.de/css/mdm_main.css’
CSS-Datei, die in jede HTML-Datei eingebunden werden soll.
m²_cssfile_md:
‘https://www.bienmueller.de/css/mdm_md.css’
CSS-Datei nur für aus md generierte HTML-Dateien. Wird zusätzlich zu obiger main eingebunden.
m²_cssfile_sb:
‘https://www.bienmueller.de/css/mdm_sb.css’
CSS-Datei für in mdmachine generierte (Sidebar, Sitemap) HTML-Dateien. Wieder zusätzlich zu main.

Die obigen CSS-Dateien werden nach der beschriebenen Logik eingebunden. Um eine größere Anzahl an Dateien zu nutzen gibt es die Importmöglichkeiten in CSS.

m²_mainfont:
‘https://www.bienmueller.de/fonts/RadioCanadaRegular.woff2’
Der wichtigste Font (im woff2-Format), der vorab geladen werden soll.
m²_include_style:
’’
identische Funktion wie im YAML-Block einer Datei, aber für alle Dateien gültig.
m²_generate_sitemap:
False
Soll im root-Verzeichenis (“hier”) eine sitemap.html für den ganzen Verzeichnisbaum unter diesem Verzeichnis erzeugt werden?