/usr/lib/python2.7/dist-packages/typogrify/templatetags/jinja_filters.py is in python-typogrify 1:2.0.7-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | from typogrify.filters import amp, caps, initial_quotes, smartypants, titlecase, typogrify, widont, TypogrifyError
from functools import wraps
import jinja2
from jinja2.exceptions import TemplateError
def make_safe(f):
"""
A function wrapper to make typogrify play nice with jinja2's
unicode support.
"""
@wraps(f)
def wrapper(text):
f.is_safe = True
out = text
try:
out = f(text)
except TypogrifyError as e:
raise TemplateError(e.message)
return jinja2.Markup(out)
wrapper.is_safe = True
return wrapper
def register(env):
"""
Call this to register the template filters for jinj2.
"""
env.filters['amp'] = make_safe(amp)
env.filters['caps'] = make_safe(caps)
env.filters['initial_quotes'] = make_safe(initial_quotes)
env.filters['smartypants'] = make_safe(smartypants)
env.filters['titlecase'] = make_safe(titlecase)
env.filters['typogrify'] = make_safe(typogrify)
env.filters['widont'] = make_safe(widont)
|