annotate tools/mdx_nl2br.py @ 507:8631d32e6b16

Some users are still having problems with the pop-up login. I think they are actually getting 403s because of the CSRF protection. So I have modified the base template to always have a javascript variable called csrf_token available when they aren't logged in. The ajax_login.js script was then modified to send this value with the ajax post. Fingers crossed.
author Brian Neal <bgneal@gmail.com>
date Sun, 04 Dec 2011 03:05:21 +0000
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)