Mmark: powerful markdown parser

What is Mmark?

1 minute read Published:

Mmark is a powerful markdown dialect that allows you to generate HTML pages, books, manual pages and you can generate Internet-Drafts/RFC when writing for the IETF - mmark was created for the latter. See About for a longer introduction and here on how to start writing documents.

Images in Mmark

2 minute read Published:

Images in Mmark are somewhat complicated, not in the least, because XML2RFC needs to output both HTML and text. To make that work you can specify multiple images in an artset and the renderer will pick the correct one, depending on the output. To include artwork/source/images, you can: Use a code block. If this has a language specified, it will become a sourcecode otherwise a will be an artwork. The contents of both must be in plain text.

Mmark: powerful markdown parser


0 minute read Published:

Mmark markdown filters

2 minute read Published:

The mmark-filter command allows you to rewrite the input markdown to new markdown.

Mmark markdown output

1 minute read Published:

The latest mmark versions gained a new renderer: -markdown that outputs markdown again. You can use this to autoformat the contents in your editor.

Mmark version 2.0.0

1 minute read Published:

Mmark version 2.0.0 has been released! This means it is considered feature complete and stable. Any syntax that creates fishy HTML5 or the wrong RFC 7791/RFC 7749 output is considered a bug and should be fixed.

Quick Start

3 minute read Published:

The easiest way to get started is to download one of the precompiled binaries. And familiarize yourself with markdown and it’s syntax and read our syntax document.

Xml2rfc should have a package for your operating system, otherwise it can be found on pypi. For version 3 output you’ll need at least 2.10.3, but newer is better.


3 minute read Published:

Mmark is a powerful markdown processor written in Go, geared towards writing IETF documents. It is, however, also suited for writing complete books and other technical documentation, like the Learning Go book (mmark source, and I-D text output). Also see this repository on how to write RFC using Markdown. It provides an advanced markdown dialect that processes file(s) to produce internet-drafts in XML RFC 7991 format. Mmark can produce xml2rfc (aforementioned RFC 7991), HTML5 output, and manual pages.


3 minute read Published:

Mmark Frequently Asked Questions. Also see the XML2RFCv3 FAQ:, section below will have the same questions, but then answered in mmark syntax. How Do I Create an Independent IETF Document? Use the following as starting point for your title block, ipr and submissiontype are the important settings here. title = "Title" abbrev = "Title" ipr = "none" submissiontype = "independent" keyword = [""] [seriesInfo] name = "Internet-Draft" value = "draft-00" stream = "independent" status = "informational" How Do I Create an IRTF Document?


19 minute read Published:

This is version 2 of Mmark: based on a new markdown implementation and some (small) language changes as well. We think these language changes lead to a more consistent user experience and lead to less confusion. See changes from v1 if you’re coming from version 1. Biggest changes: Including files is now done relative to the file being parsed (i.e. the sane way). Block attributes apply to block elements only.