What is this?

This is an example of the user of the markmate syntax, which is a mixture of markdown and txt2tags.

Text Decorations

Of course, this software supports the classic decorations, which are based on the use of three different markers: * for strong and / for emphasis .

Also, it is possible to mix-up decorations like here.

The indicators may be escaped by preceding them with a backslash. So \*escaped\* gives *escaped*.

It is also possible to inline code using `: ls ~/bin.

Links and images

Both urls (http://www.google.com) and mailto (forolifo@fotoin.forsic.com) are automatically recognized.

Images are simply denoted by [image_path].

It is also possible to add explicit links of the form [text url]: This is just an example.

Or to add a link to an image: [[image_path] url]:


Local links may be used by means of an element's label (if it exists) [text > label], like in this link to The main page.

When a label does not exist, the corresponding text field may be used directly [text >]. However, this is not recommended, as changing the text will invalidate all corresponding links. This is an example link to Text Decorations.


It is also possible to use inline equations xn+ynzn.

Or, of course, block equations:



Like in markdown, quotes work the same than in e-mail messages:

This is a very long quote which will span more than one line only for the purposes of this explanation.

They work in lazy mode:

This is a very long quote which will span more than one line only for the purposes of this explanation. Uses lazy mode.

And they may be nested

This is a first level quote.

This is a second level quote eiπ=-1.

External calls

One of the most important elements of markmate is the inclusion of external blocks: blocks which may be processed by other programs. External blocks are marked as follows:

-----------name p1, p2, p3----------

One example is the syntax highligting external:

-----hl ruby------
def endless_loop

Which produces:

   1  def endless_loop
   2     self.endless_loop
   3  end

Labels may be assigned to an external by appending them after a |.

   1  def endless_loop
   2     self.endless_loop
   3  end

Lists and Tables


It is possible to create unnumbered and numbered lists using the markup *, + or - for the first case and the markup 1. for the second.

  • First level 1 a
    • Second-level 1.1 b
    • Second-level 1.2 c
  • First level 2 d
    • Second-level 2.1 e
      • Third-level 2.2 f

And so on. But every list item may include also other elements, like quotes and externals, which leads to complex layouts:

  • First-level 1 g
    1. 2nd-level 1.1 h
    • Second-level 1.1 i
    1. 2nd-level 1.1 j
    • Second-level 1.1 k

      This is a quote

      And we are still into the second-level item

    • Second-level 1.1 l
  • First-level 2 m