- Mermaid, D2, Cytograph own their renderers.
mkdir -p vyasa/extensions_builtin/mermaid/static
awk '/^def _render_mermaid_block/{flag=1} /^def _render_tasks_block/{flag=0} flag' vyasa/extensions_builtin/markdown/renderer.py > /tmp/mermaid_render.py
Then paste into vyasa/extensions_builtin/mermaid/render.py and add local
imports for html, re, _escape_attr equivalent if needed, and a local id
generator.
mkdir -p vyasa/extensions_builtin/d2/static
awk '/^def _render_d2_block/{flag=1} /^def _render_mermaid_block/{flag=0} flag' vyasa/extensions_builtin/markdown/renderer.py > /tmp/d2_render.py
mkdir -p vyasa/extensions_builtin/cytograph/static
awk '/^def _clean_scalar/{flag=1} /^def _render_cryptograph_block/{flag=0} flag' vyasa/extensions_builtin/markdown/renderer.py > /tmp/cytograph_render.py
- Change imports in extension registration to local
from .render import ....
- Delete original functions from Markdown after tests pass.
- Delete hard-coded fallback branches in
render_block_code.
rg "_render_mermaid_block|_render_d2_block|_render_cytograph_block" vyasa/extensions_builtin/markdown/renderer.py returns no results.
rg "from ..markdown.renderer" vyasa/extensions_builtin/mermaid vyasa/extensions_builtin/d2 vyasa/extensions_builtin/cytograph returns no results.