Index: third_party/markdown/extensions/extra.py |
diff --git a/third_party/markdown/extensions/extra.py b/third_party/markdown/extensions/extra.py |
new file mode 100644 |
index 0000000000000000000000000000000000000000..e6a1e820ef0225c55773eeac46638ab63a7550ff |
--- /dev/null |
+++ b/third_party/markdown/extensions/extra.py |
@@ -0,0 +1,54 @@ |
+""" |
+Python-Markdown Extra Extension |
+=============================== |
+ |
+A compilation of various Python-Markdown extensions that imitates |
+[PHP Markdown Extra](http://michelf.com/projects/php-markdown/extra/). |
+ |
+Note that each of the individual extensions still need to be available |
+on your PYTHONPATH. This extension simply wraps them all up as a |
+convenience so that only one extension needs to be listed when |
+initiating Markdown. See the documentation for each individual |
+extension for specifics about that extension. |
+ |
+In the event that one or more of the supported extensions are not |
+available for import, Markdown will issue a warning and simply continue |
+without that extension. |
+ |
+There may be additional extensions that are distributed with |
+Python-Markdown that are not included here in Extra. Those extensions |
+are not part of PHP Markdown Extra, and therefore, not part of |
+Python-Markdown Extra. If you really would like Extra to include |
+additional extensions, we suggest creating your own clone of Extra |
+under a differant name. You could also edit the `extensions` global |
+variable defined below, but be aware that such changes may be lost |
+when you upgrade to any future version of Python-Markdown. |
+ |
+""" |
+ |
+from __future__ import absolute_import |
+from __future__ import unicode_literals |
+from . import Extension |
+ |
+extensions = ['smart_strong', |
+ 'fenced_code', |
+ 'footnotes', |
+ 'attr_list', |
+ 'def_list', |
+ 'tables', |
+ 'abbr', |
+ ] |
+ |
+ |
+class ExtraExtension(Extension): |
+ """ Add various extensions to Markdown class.""" |
+ |
+ def extendMarkdown(self, md, md_globals): |
+ """ Register extension instances. """ |
+ md.registerExtensions(extensions, self.config) |
+ if not md.safeMode: |
+ # Turn on processing of markdown text within raw html |
+ md.preprocessors['html_block'].markdown_in_raw = True |
+ |
+def makeExtension(configs={}): |
+ return ExtraExtension(configs=dict(configs)) |