changeset 527:ce9fbce557b2 stable-0.4.x

Ported [630] to 0.4.x branch.
author cmlenz
date Mon, 18 Jun 2007 21:01:22 +0000
parents d3e5fe934d6e
children c16ccc077d72
files genshi/template/interpolation.py genshi/template/tests/interpolation.py
diffstat 2 files changed, 9 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/genshi/template/interpolation.py
+++ b/genshi/template/interpolation.py
@@ -137,6 +137,9 @@
             yield True, text[offset + 1:pos].strip()
 
         elif not escaped and next == PREFIX:
+            if offset > pos:
+                yield False, text[pos:offset]
+                pos = offset
             escaped = True
             pos = offset + 1
 
--- a/genshi/template/tests/interpolation.py
+++ b/genshi/template/tests/interpolation.py
@@ -60,6 +60,12 @@
         self.assertEqual(TEXT, parts[0][0])
         self.assertEqual('$bla', parts[0][1])
 
+    def test_interpolate_short_escaped_2(self):
+        parts = list(interpolate('my $$bla = 2'))
+        self.assertEqual(1, len(parts))
+        self.assertEqual(TEXT, parts[0][0])
+        self.assertEqual('my $bla = 2', parts[0][1])
+
     def test_interpolate_short_doubleescaped(self):
         parts = list(interpolate('$$$bla'))
         self.assertEqual(2, len(parts))
Copyright (C) 2012-2017 Edgewall Software