mmark - generate XML, HTML or markdown from mmark markdown
documents.
mmark [OPTIONS] [FILE...]
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.
Mmark provides an advanced markdown dialect that processes file(s)
to produce internet-drafts in XML RFC 7991
⟨https://tools.ietf.org/html/rfc7991⟩ format. Mmark can
produce xml2rfc (aforementioned RFC 7991), HTML5 and manual pages.
The syntax is detailed at https://mmark.miek.nl/syntax
⟨https://mmark.miek.nl/syntax⟩.
Compared to other markdown variants mmark adds:
- (Extended) Title block to specify authors and IETF specific bits.
- (Special) sections for abstracts, prefaces or notes.
- Including other files with the option to specify line ranges, regular
expressions and/or prefixing each line with a custom string.
- Document divisions: front matter, main matter and back matter.
- Captions for code, tables, quotes and subfigures.
- Asides for small notes.
- Figures and Subfigures that allow for grouping images into subfigures as
well as giving a single image metadata (a link, attributes, etc.).
- Block Level Attributes that allow to specify attributes, classes and IDs
for elements.
- Indices to mark an item (and/or a subitem) to be referenced in the
document index.
- Citations and adding XML References (those used by the IETF).
- Cross references: short form of referencing a section in the
document.
- Super- and Subscript.
- Callouts in code and text.
- BCP14 (RFC 2119) keyword detection.
This is the XML format used by the RFC editor for accepting
Internet-Drafts.
The HTML5 renderer outputs HTML.
The man renderer outputs nroff that can be viewed via man(1).
- -ast
- print abstract syntax tree and exit.
- -css string
- link to a CSS stylesheet (only used with -html).
- -fragment
- don't create a full document.
- -head string
- link to HTML to be included in head (only used with -html).
- -html
- create HTML output.
- -man
- output nroff (manual pages).
- -unsafe
- allow includes from anywhere in the filesystem, otherwise they are only
allowed below the current document.
- -index
- generate an index at the end of the document (default true).
- -bibliography
- generate a bibliography section after the back matter (default true), this
needs a {{backmatter}} in the document.
- -version
- show mmark's version.
RFC 7991 and (maybe) RFC 7749. The main site for Mmark is
https://mmark.miek.nl ⟨https://mmark.miek.nl⟩. The syntax used
by mmark is explained in the syntax page
⟨https://mmark.miek.nl/post/syntax/⟩.