Mercurial > public > sg101
annotate tools/mdx_nl2br.py @ 356:f54bf3b3bece
Fix 180; Add strikethrough capability to markdown via an extension. Also control in SVN the extensions we are using.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Fri, 04 Mar 2011 02:10:37 +0000 |
parents | |
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) |