diff --git a/django/template/defaultfilters.py b/django/template/defaultfilters.py
index 22babfd6c0d..1fd6d02c70a 100644
--- a/django/template/defaultfilters.py
+++ b/django/template/defaultfilters.py
@@ -254,13 +254,20 @@ def escape(value):
escape = stringfilter(escape)
def linebreaks(value):
- "Converts newlines into
and
s"
+ """
+ Replaces line breaks in plain text with appropriate HTML; a single
+ newline becomes an HTML line break (``
``) and a new line
+ followed by a blank line becomes a paragraph break (``
``).
+ """
from django.utils.html import linebreaks
return linebreaks(value)
linebreaks = stringfilter(linebreaks)
def linebreaksbr(value):
- "Converts newlines into
s"
+ """
+ Converts all newlines in a piece of plain text to HTML line breaks
+ (``
``).
+ """
return value.replace('\n', '
')
linebreaksbr = stringfilter(linebreaksbr)
diff --git a/docs/templates.txt b/docs/templates.txt
index 0c8cc79311b..dbed0ba5c94 100644
--- a/docs/templates.txt
+++ b/docs/templates.txt
@@ -1135,12 +1135,15 @@ Returns a boolean of whether the value's length is the argument.
linebreaks
~~~~~~~~~~
-Converts newlines into ```` and ``
`` tags.
+Replaces line breaks in plain text with appropriate HTML; a single
+newline becomes an HTML line break (``
``) and a new line
+followed by a blank line becomes a paragraph break (``
``).
linebreaksbr
~~~~~~~~~~~~
-Converts newlines into ``
`` tags.
+Converts all newlines in a piece of plain text to HTML line breaks
+(``
``).
linenumbers
~~~~~~~~~~~