annotate tools/mdx_nl2br.py @ 558:9a68fd3bd8a5

Creating a simple banner / ad campaign application, initially as a RFB / SG101 tie-in.
author Brian Neal <bgneal@gmail.com>
date Thu, 02 Feb 2012 18:56:48 -0600
parents f54bf3b3bece
children
rev   line source
bgneal@356 1 """
bgneal@356 2 A python-markdown extension to treat newlines as hard breaks; like
bgneal@356 3 StackOverflow and GitHub flavored Markdown do.
bgneal@356 4
bgneal@356 5 """
bgneal@356 6 import markdown
bgneal@356 7
bgneal@356 8
bgneal@356 9 BR_RE = r'\n'
bgneal@356 10
bgneal@356 11 class Nl2BrExtension(markdown.Extension):
bgneal@356 12
bgneal@356 13 def extendMarkdown(self, md, md_globals):
bgneal@356 14 br_tag = markdown.inlinepatterns.SubstituteTagPattern(BR_RE, 'br')
bgneal@356 15 md.inlinePatterns.add('nl', br_tag, '_end')
bgneal@356 16
bgneal@356 17
bgneal@356 18 def makeExtension(configs=None):
bgneal@356 19 return Nl2BrExtension(configs)