mkd-extensions
- Extensions to the Markdown text formatting syntax
DESCRIPTION
This version of markdown has been extended in a few ways by
extending existing markup, creating new markup from scratch,
and borrowing markup from other markup languages.
Image dimensions
Markdown embedded images have been extended to allow specifying
the dimensions of the image by adding a new argument
=/height/x/width/
to the link description.
The new image syntax is

pseudo-protocols
Five pseudo-protocols have been added to links
id:
The
alt text
is marked up and written to the output, wrapped with
<a id=id>
and
</a>
class:
The
alt text
is marked up and written to the output, wrapped with
<span class=class>
and
</span>
raw:
The
title
is written
-- with no further processing --
to the output. The
alt text
is discarded.
abbr:
The
alt text
is marked up and written to the output, wrapped with
<abbr title=abbr>
and
</abbr>
lang:
The
alt text
s marked up and written to the output, wrapped with
<span lang=lang>
and
</span>
Pandoc headers
The markdown source document can have a 3-line
Pandoc
header in the format of
% title
% author(s)
% date
which will be made available to the
Fn mkd_doc_title ,
Fn mkd_doc_author ,
and
Fn mkd_doc_date
functions.
Definition lists
A definition list item
is defined as
=tag=
description
(that is a
=
followed by text, another
=
a newline, 4 spaces of intent, and then more text.)
Alternatively, definition list items are defined as
tag
: description
(This is the format that
PHP Markdown Extra
uses.)
embedded stylesheets
Stylesheets may be defined and modified in a
<style>
block. A style block is parsed like any other
block level html;
<style>
starting on column 1, raw html (or, in this case, css) following
it, and either ending with a
</style>
at the end of the line or a
</style>
at the beginning of a subsequent line.
Be warned that style blocks work like footnote links -- no matter
where you define them they are valid for the entire document.
relaxed emphasis
The rules for emphasis are changed so that a single
_
will
not
count as a emphasis character if it's in the middle of a word.
This is primarily for documenting code, if you don't wish to
have to backquote all code references.
alpha lists
Alphabetic lists (like regular numeric lists, but with alphabetic
items) are supported. So:
The dashed line can also contain
:
characters for formatting; if a
:
is at the start of a column, it tells
discount
to align the cell contents to the left; if it's at the end, it
aligns right, and if there's one at the start and at the
end, it centers.
strikethrough
A strikethrough syntax is supported in much the same way that
`
is used to define a section of code. If you enclose text with
two or more tildes, such as
~~erased text~~
it will be written as
<del>erased text</del>
Like code sections, you may use as many
~
as you want, but there must be as many starting tildes as closing
tildes.
markdown extra-style footnotes
PHP Markdown Extra
footnotes are supported. If a footnote link begins with a
^
the first use of that footnote will generate a link down to the
bottom of the rendered document, which will contain a numbered footnote
with a link back to where the footnote was called.