diff options
Diffstat (limited to 'markdown/extensions')
-rw-r--r-- | markdown/extensions/extra.py | 1 | ||||
-rw-r--r-- | markdown/extensions/legacy_em.py | 30 | ||||
-rw-r--r-- | markdown/extensions/smart_strong.py | 37 |
3 files changed, 30 insertions, 38 deletions
diff --git a/markdown/extensions/extra.py b/markdown/extensions/extra.py index 19b9db0..e498a74 100644 --- a/markdown/extensions/extra.py +++ b/markdown/extensions/extra.py @@ -37,7 +37,6 @@ from .. import util import re extensions = [ - 'smart_strong', 'fenced_code', 'footnotes', 'attr_list', diff --git a/markdown/extensions/legacy_em.py b/markdown/extensions/legacy_em.py new file mode 100644 index 0000000..5cc0f6d --- /dev/null +++ b/markdown/extensions/legacy_em.py @@ -0,0 +1,30 @@ +''' +Legacy Em Extension for Python-Markdown +======================================= + +This extention provides legacy behavior for _connected_words_. + +Copyright 2015-2018 The Python Markdown Project + +License: [BSD](http://www.opensource.org/licenses/bsd-license.php) + +''' + +from __future__ import absolute_import +from __future__ import unicode_literals +from . import Extension +from ..inlinepatterns import SimpleTagInlineProcessor + +EMPHASIS_RE = r'(\*|_)(.+?)\1' +STRONG_RE = r'(\*{2}|_{2})(.+?)\1' + + +class LegacyEmExtension(Extension): + """ Add legacy_em extension to Markdown class.""" + + def extendMarkdown(self, md, md_globals): + """ Modify inline patterns. """ + md.inlinePatterns.register(SimpleTagInlineProcessor(STRONG_RE, 'strong'), 'strong', 40) + md.inlinePatterns.register(SimpleTagInlineProcessor(EMPHASIS_RE, 'em'), 'emphasis', 30) + md.inlinePatterns.deregister('strong2') + md.inlinePatterns.deregister('emphasis2') diff --git a/markdown/extensions/smart_strong.py b/markdown/extensions/smart_strong.py deleted file mode 100644 index e7a15d9..0000000 --- a/markdown/extensions/smart_strong.py +++ /dev/null @@ -1,37 +0,0 @@ -''' -Smart_Strong Extension for Python-Markdown -========================================== - -This extension adds smarter handling of double underscores within words. - -See <https://Python-Markdown.github.io/extensions/smart_strong> -for documentation. - -Original code Copyright 2011 [Waylan Limberg](http://achinghead.com) - -All changes Copyright 2011-2014 The Python Markdown Project - -License: [BSD](http://www.opensource.org/licenses/bsd-license.php) - -''' - -from __future__ import absolute_import -from __future__ import unicode_literals -from . import Extension -from ..inlinepatterns import SimpleTagInlineProcessor - -SMART_STRONG_RE = r'(?<!\w)(_{2})(?!_)(.+?)(?<!_)\1(?!\w)' -STRONG_RE = r'(\*{2})(.+?)\1' - - -class SmartEmphasisExtension(Extension): - """ Add smart_emphasis extension to Markdown class.""" - - def extendMarkdown(self, md, md_globals): - """ Modify inline patterns. """ - md.inlinePatterns.register(SimpleTagInlineProcessor(STRONG_RE, 'strong'), 'strong', 40) - md.inlinePatterns.register(SimpleTagInlineProcessor(SMART_STRONG_RE, 'strong'), 'strong2', 10) - - -def makeExtension(**kwargs): # pragma: no cover - return SmartEmphasisExtension(**kwargs) |