[ANN] PHP Markdown 1.0.1p & Extra 1.2.6

Michel Fortin michel.fortin at michelf.ca
Sun Jan 13 15:02:35 EST 2013

This release adds block-level HTML5 elements to the list of elements which can be used to create code blocks. For PHP Markdown Extra it also adds the ability to set a class name on fenced code blocks and on headers, and to have multiple references to the same footnote.

As usual you can download the latest version from the PHP Markdown project page:

In case you want to review them, the syntax additions to PHP Markdown Extra have been documented on its syntax page:

- - -

## Changes since last version ##

Extra 1.2.6 (13 Jan 2013):

* Headers can now have a class attribute. You can add a class inside the
extra attribute block which can optionally be put after a header:

### Header ### {#id .class1 .class2}

Spaces between components in the brace is optional.

* Fenced code blocks can also have a class and an id attribute. If you only
need to apply a class (typically to indicate the language of a code
snippet), you can write it like this:

~~~ html

or like this:

~~~ .html

There is a new configuration option `MARKDOWN_CODE_CLASS_PREFIX` you can
use if you need to append a prefix to the class name.

You might also opt to use an extra attribute block just like for headers:

~~~ {.html #id .codeclass}

Note that class names added this way are not affected by the

A code block creates a `pre` HTML element containing a `code` element.
The `code` HTML element is the one that receives the attribute. If for
some reason you need attributes to be applied to the enclosing `pre`
element instead, you can set the MARKDOWN_CODE_ATTR_ON_PRE configuration
variable to true.

* Fixed an issue were consecutive fenced code blocks containing HTML-like
code would confuse the parser.

* Multiple references to the same footnote are now allowed.

* Fixed an issue where no_markup mode was ineffective.

1.0.1p (13 Jan 2013):

* Fixed an issue where some XML-style empty tags (such as `<br/>`) were not
recognized correctly as such when inserted into Markdown-formatted text.

* The following HTML 5 elements are treated as block elements when at the
root of an HTML block: `article`, `section`, `nav`, `aside`, `hgroup`,
`header`, `footer`, and `figure`. `svg` too.

Michel Fortin
michel.fortin at michelf.ca

More information about the Markdown-Discuss mailing list