diff options
author | Waylan Limberg <waylan.limberg@icloud.com> | 2015-04-07 21:01:55 -0400 |
---|---|---|
committer | Waylan Limberg <waylan.limberg@icloud.com> | 2018-07-31 11:40:59 -0400 |
commit | cba86d6175d00b897d6f5c4b3fec640e7309de60 (patch) | |
tree | d91586e9e45ebcd09851e26cc0c09c6ddf6a842c /markdown/extensions/legacy_em.py | |
parent | 15acbdec8c9357b78435af707140b0278cf376b2 (diff) | |
download | markdown-cba86d6175d00b897d6f5c4b3fec640e7309de60.tar.gz markdown-cba86d6175d00b897d6f5c4b3fec640e7309de60.tar.bz2 markdown-cba86d6175d00b897d6f5c4b3fec640e7309de60.zip |
smart_emphasis keyword > legacy_em extension.
The smart_strong extension has been removed and its behavior is now the
default (smart em and smart strong are the default). The legacy_em
extension restores legacy behavior (no smart em or smart strong).
This completes the removal of keywords. All parser behavior is now
modified by extensions, not by keywords on the Markdown class.
Diffstat (limited to 'markdown/extensions/legacy_em.py')
-rw-r--r-- | markdown/extensions/legacy_em.py | 30 |
1 files changed, 30 insertions, 0 deletions
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') |