Python-Markdown 2.4 Release Notes¶
We are pleased to release Python-Markdown 2.4 which adds one new extension and fixes various bugs. See the list of changes below for details.
Python-Markdown supports Python versions 2.6, 2.7, 3.1, 3.2, and 3.3.
force_linenosconfiguration setting of the CodeHilite extension has been marked as Deprecated. It had previously been marked as “Pending Deprecation” in version 2.3 when a new setting
linenumswas added to replace it. See documentation for the CodeHilite Extension for an explanation of the new
linenumssetting. The new setting will honor the old
force_linenosif it is set, but
force_linenoswill raise a
DeprecationWarningand will likely be removed in a future version of Python-Markdown.
URLs are no longer percent-encoded. This improves compatibility with the original (written in Perl) Markdown implementation. Please percent-encode your URLs manually when needed.
What’s New in Python-Markdown 2.4¶
Thanks to the hard work of Dmitry Shachnev the Smarty Extension has been added, which implements SmartyPants using Python-Markdown’s Extension API. This offers a few benefits over a third party script. The HTML does not need to be “tokenized” twice, no hacks are required to combine SmartyPants and code highlighting, and we get markdown’s escaping feature for free. Please try it out and report bugs and/or improvements.
It is now possible to enable Markdown formatting inside HTML blocks by appending
markdown=1to opening tag attributes. See [Markdown Inside HTML Blocks] section for details. Thanks to ryneeverett for implementing this feature.
The code blocks now support emphasizing some of the code lines. To use this feature, specify
hl_linesoption after language name, for example (using the Fenced Code Extension):
```.python hl_lines="1 3" # This line will be emphasized. # This one won't. # This one will be also emphasized. ```
Thanks to A. Jesse Jiryu Davis for implementing this feature.
Various bug fixes have been made. See the commit log for a complete history of the changes.