Sie befinden sich hier: start » de » Interne Dokumentation » DokuWiki-Erweiterungen (WvdS) » Abgelöste Pakete und alte Seiten-Kennungen » Markdown (wvdsmd)

Markdown (wvdsmd)

Plugin: lib/plugins/wvdsmd (GPL 2) · Engine: wvdsdwmd (aus der WvdS-DW-Suite übernommen; ohne eigene Seite auf dieser Installation)
Autor: Wolfgang van der Stille Wolfgang.van.der.Stille@gmail.com (The White Knight Labs)

Markdown-Authoring nach dem Modell des WordPress-Plugins „Ultimate Markdown„, vollständig DokuWiki-adaptiert. Grundsatzentscheidung (verifiziert gegen inc/pageutils.php dieser Version): .txt bleibt die kanonische DateiwikiFN()/page_exists()/Attic/Changelog sind ohne Event-Seam auf .txt verdrahtet; .md als einzige Datei würde Historie und Existenzprüfung brechen. Markdown ist deshalb Autoring-Format, nicht Speicher-Format.

Funktionsweise

  • Autodetection: Erste Zeile <!DOCTYPE markdown> ⇒ die Seite ist eine Markdown-Seite. PARSER_WIKITEXT_PREPROCESS verpackt den Inhalt transparent in den <markdown>-Inline-Modus der wvdsdwmd-Engine (eine Engine im Haus: Parsedown + Sanitizer + FrontMatter + LinkBridge). Ohne wvdsdwmd rendert die Seite als normaler Wikitext (graceful).
  • Editor: Auf Edit-Ansichten von Markdown-Seiten lädt das Plugin die vendorte EasyMDE (MIT, offline) und ersetzt die Textarea; die Marker-Zeile ist im Editor unsichtbar und wird beim Speichern wieder vorangestellt. DokuWiki-Save/Draft-Fluss bleibt unverändert; ohne JS funktioniert die normale Textarea.
  • Import: Verwaltung → „WvdS Markdown-Dokumente“: .md-Upload (mehrfach, ≤ 1 MB/Datei), Ziel-Namespace; YAML-Front-Matter id/title wird angewendet; Speicherung über saveWikiText() ⇒ Historie/Attic normal.
  • Export: Einzelseite als .md-Download (Marker gestrippt, verlustfreier Roundtrip) oder Namespace als ZIP (nur mit PHP-Zip-Erweiterung). Nur Markdown-Seiten sind exportierbar — Wiki-Syntax→Markdown-Konvertierung ist bewusst kein Ziel.
  • Headless: plugin.wvdsmd.importDocument(id, mdText, summary) / plugin.wvdsmd.exportDocument(id) über die Remote-API.

Rechte

Admin-Seite auch für Manager (Inhalts-Werkzeug); je Seite gilt die normale ACL — im Helper erzwungen: Import braucht EDIT auf bestehenden bzw. CREATE auf neuen Seiten (Core-Parität), Export READ. Ein Front-Matter-id darf nur innerhalb des gewählten Ziel-Namespace umlenken (Confused-Deputy-Härtung). Upload-Limits: 50 Dateien/Request, 1 MB/Datei.

wvdsdwmd-Adoption

wvdsdwmd stammt aus dem Repo wk-dw-md-plugin (devops.wvds.it). Die Registry-Anbindung ist zwar Duck-Typed-No-Op, aber das Render-Interface (MarkdownRenderer extends Contract) braucht wkcore zur Compile-Zeit — deshalb ist wkcore (Repo wk-dw-core-plugin) mitinstalliert; es ist zugleich die Layer-1-Basis für den späteren Instanz-Sync (AP13). Das alte mdpage-Plugin ist deaktiviert (doppelte <markdown>-Registrierung). Librarian-Kompatibilitätspatch: Typehint dokuwiki\Parsing\HandlerDoku_Handler in syntax.php (die Klasse existiert in 2025-05-14b noch nicht; ohne Patch E_COMPILE_ERROR bei jeder ungecachten Parsung). Bei Updates aus dem Repo den Patch erneut anwenden oder upstream versionieren.

de/wiki/dwe/legacy/wvdsmd.txt · Zuletzt geändert: von 0.0.0.0