Mark II is a text-to-HTML converter. The syntax it uses closely follows the way its author formats his plain text documents (e.g. e-mail), so it stays simple and readable.
You can get the latest sources [1] via mercurial like this:
hg clone http://hg.tx97.net/mark-two
Mark II recognizes two styles of headers. Underlined headers:
This is a level 1 header
========================
A level 2 header
----------------
And a level 3 header
~~~~~~~~~~~~~~~~~~~~
And prefixed headers:
= Level 1
== Level 2
=== And so on
A code block is any piece of text indented by 4 spaces (including unindented empty lines between indented parts).
You can also have inline code fragments by enclosing text into one or several single quotes:
Here’s an example 'inline code fragment'.
You can also quote the quotes, like this: '' ' ''.
A reference id enclosed in square brackets, becomes a link to that reference. You must actually define the reference with the same id somewhere in the text.
References [1] work just as they do
in printed literature.
[1] the-url
A common practice is to gather all the references into one block at the end of the document.
An indented piece of text started with a minus or an asterisk marks an unordered list:
* you can use both single-line items
* and multi-line items,
like this one
* note that empty lines do not break lists
An indented piece of text started with a number and a dot or a closing paren marks an ordered list:
1. note that the numbers
9) don’t matter
A single closed HTML tag placed on its own line will be placed into the HTML output verbatim:
<img src="some.image"/>
Similarly, multi-line HTML fragments are recognized if the starting and ending tags are located on their own lines:
<script type="text/javascript">
console.log("Hello, world!");
</script>
Everything else becomes paragraphs. Use empty lines to delimit them.
Setup TCL 8.5, get mark-two.tcl, make it executable, pipe text into it or run it with file names as parameters, and collect the HTML from its output.