Idea to allow customizing markdown output (with templating, without changing the parsing)

Hi, guys,

I’d like to share an idea with the devs, but also with everyone else, about customization of markdown output. What I want with this post is both to know about its implementation feasibility and about its viability from a usage perspective. I’d be happy to try implementing it myself, but I’d need some mentoring.

My idea is to extend the “default template files” idea (think the default atom.xml or 404.html). The way it would work is we would define a default file for each markdown construct and we would pass the corresponding contents as we do with the other templates. As with the other templates, they could be overridden by the user placing a correspondingly named file in the correct place.

So, for example, we could have unordered-list.html, header.html, emph.html, etc. This way, we would be able to place the classes we wanted and use tera constructs for additional customization.

The issue would be these additional intermediate renderings making the whole process too slow…

I know that by using this the user would be able to completely jeopardize the semantic relation between markdown input and HTML output, but is this really an issue?

I would really love feedback about this. Thanks.