diff --git a/django/utils/html.py b/django/utils/html.py index 014d837bbb3..fe2e6b7a29b 100644 --- a/django/utils/html.py +++ b/django/utils/html.py @@ -31,11 +31,11 @@ hard_coded_bullets_re = re.compile(r'((?:
(?:%s).*?[a-zA-Z].*?
\s*)+)' % '| trailing_empty_content_re = re.compile(r'(?:(?: |\s|
)*?
and
s."""
diff --git a/docs/ref/utils.txt b/docs/ref/utils.txt
index 09744094539..549812296bc 100644
--- a/docs/ref/utils.txt
+++ b/docs/ref/utils.txt
@@ -387,6 +387,28 @@ Atom1Feed
input is a proper string, then add support for lazy translation objects at the
end.
+``django.utils.html``
+=====================
+
+.. module:: django.utils.html
+ :synopsis: HTML helper functions
+
+Usually you should build up HTML using Django's templates to make use of its
+autoescape mechanism, using the utilities in :mod:`django.utils.safestring`
+where appropriate. This module provides some additional low level utilitiesfor
+escaping HTML.
+
+.. function:: escape(text)
+
+ Returns the given text with ampersands, quotes and angle brackets encoded
+ for use in HTML. The input is first passed through
+ :func:`~django.utils.encoding.force_unicode` and the output has
+ :func:`~django.utils.safestring.mark_safe` applied.
+
+.. function:: conditional_escape(text)
+
+ Similar to ``escape()``, except that it doesn't operate on pre-escaped strings,
+ so it will not double escape.
``django.utils.http``
=====================