diff --git a/tests/test_widgets.py b/tests/test_widgets.py
index 57267ec..e838182 100644
--- a/tests/test_widgets.py
+++ b/tests/test_widgets.py
@@ -653,6 +653,19 @@ class TestLabel(WidgetTest):
attrs = {'text': 'something'}
expected = """something"""
+ def test_escape(self):
+ attrs = {'text': 'line 1
line 2'}
+ expected = 'line 1<br />line 2'
+ for engine in self._get_all_possible_engines():
+ yield (self._check_rendering_vs_expected,
+ engine, attrs, self.params, expected)
+
+ attrs = {'text': 'line 1
line 2', 'escape': False}
+ expected = 'line 1
line 2'
+ for engine in self._get_all_possible_engines():
+ yield (self._check_rendering_vs_expected,
+ engine, attrs, self.params, expected)
+
class TestForm(WidgetTest):
diff --git a/tw2/forms/templates/label.jinja b/tw2/forms/templates/label.jinja
index 4a1658f..396db6b 100644
--- a/tw2/forms/templates/label.jinja
+++ b/tw2/forms/templates/label.jinja
@@ -1 +1 @@
-{{ w.text }}
\ No newline at end of file
+{% if w.escape %}{{ w.text|string }}{% else %}{{ w.text|safe }}{% endif %}
\ No newline at end of file