""" NL2BR Extension =============== A Python-Markdown extension to treat newlines as hard breaks; like GitHub-flavored Markdown does. Usage: >>> import markdown >>> print markdown.markdown('line 1\\nline 2', extensions=['nl2br'])

line 1
line 2

Copyright 2011 [Brian Neal](http://deathofagremmie.com/) Dependencies: * [Python 2.4+](http://python.org) * [Markdown 2.1+](http://packages.python.org/Markdown/) """ from __future__ import absolute_import from __future__ import unicode_literals from . import Extension from ..inlinepatterns import SubstituteTagPattern BR_RE = r'\n' class Nl2BrExtension(Extension): def extendMarkdown(self, md, md_globals): br_tag = SubstituteTagPattern(BR_RE, 'br') md.inlinePatterns.add('nl', br_tag, '_end') def makeExtension(configs=None): return Nl2BrExtension(configs)