Table of Contents

DokuWiki Changes

DokuWiki Changes is a record of every place this installation patches DokuWiki core directly (inc/, bin/, entry points), plus an honest assessment of which patches actually required touching core versus which ones could have been ordinary plugins. lib/tpl/ and lib/plugins/ are separate, gitignored git repositories not covered here except where they interact with a core patch.

Had to be core

One change genuinely could not have been a plugin.

Could plausibly have been plugins

These touch core but DokuWiki exposes an event or extension mechanism that would have avoided it.

Legitimately core (no clean alternative)

Abandoned experiment: `feat/Markup` branch

Fifteen commits between November 2025 and February 2026 built a hand-rolled markup engine at inc/Markup/Markup.php (tokenizer, block scanning, \begin/\end, line commands, \itemize/\enumerate) — apparently aimed at parsing LaTeX-like structure more thoroughly than the current latex_figure stub (which just renders as a raw latex code block, per inc/parser/xhtml.php). This work never merged into master; it lives only on the feat/Markup branch and isn't deployed anywhere. Worth revisiting if latex_figure ever needs real structural parsing instead of pass-through rendering.

Companion tooling, not core changes

Plugins already done right

For contrast, katex, markdowku, man, and socialicons are all proper plugins living in the gitignored lib/plugins/, touching zero core files. man in particular hooks ACTION_ACT_PREPROCESS and TPL_ACT_UNKNOWN to serve entirely synthetic pages without ever writing to data/pages — proof that even fairly deep integrations (routing, rendering, caching) are achievable through the plugin API when the right event exists.