Mercurial > piecrust2
view piecrust/formatting/smartypantsformatter.py @ 1168:10520472cc73
routing: Fix breakages with routing on some versions of Python.
Finally figured what happened with change 6baa94da8b16 (this is a Mercurial
hash by the way if you're looking at the Git mirror). Between Python 3.6 and
3.7 there was a change where the percent sign ('%') went from being escaped by
`re.escape` to _not_ being escaped. So now we need to use different regex
patterns dependin on the Python version, yay.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Fri, 04 Oct 2019 11:13:33 -0700 |
parents | 370e74941d32 |
children |
line wrap: on
line source
from piecrust.formatting.base import Formatter, PRIORITY_LAST class SmartyPantsFormatter(Formatter): FORMAT_NAMES = ['html'] OUTPUT_FORMAT = 'html' def __init__(self): super(SmartyPantsFormatter, self).__init__() self.priority = PRIORITY_LAST import smartypants self._sp = smartypants.smartypants def initialize(self, app): super(SmartyPantsFormatter, self).initialize(app) self.enabled = ( app.config.get('smartypants/enable') or app.config.get('smartypants/enabled')) def render(self, format_name, txt): assert format_name == 'html' return self._sp(txt)