1
# -*- coding: utf-8 -*-
6
Native Python implementation the C module is not compiled.
8
:copyright: (c) 2010 by Armin Ronacher.
9
:license: BSD, see LICENSE for more details.
11
from markupsafe import Markup
12
from markupsafe._compat import text_type
16
"""Convert the characters &, <, >, ' and " in string s to HTML-safe
17
sequences. Use this if you need to display text that might contain
18
such characters in HTML. Marks return value as markup string.
20
if hasattr(s, '__html__'):
22
return Markup(text_type(s)
23
.replace('&', '&')
26
.replace("'", ''')
27
.replace('"', '"')
32
"""Like :func:`escape` but converts `None` into an empty
41
"""Make a string unicode if it isn't already. That way a markup
42
string is not converted back to unicode.
44
if not isinstance(s, text_type):