mercurial/hgweb.py
changeset 172 e9b1147db448
parent 168 65cf1b0cfe86
child 173 8da1df932c16
--- a/mercurial/hgweb.py	Thu May 26 18:20:24 2005 -0800
+++ b/mercurial/hgweb.py	Thu May 26 20:37:05 2005 -0800
@@ -142,7 +142,16 @@
                 l += [ x for x in list if x.startswith(f) ]
             return l
 
-        def prettyprint(diff):
+        parity = [0]
+        def diffblock(diff, f, fn):
+            yield self.t("diffblock",
+                         lines = prettyprintlines(diff),
+                         parity = parity[0],
+                         file = f,
+                         filenode = hex(fn))
+            parity[0] = 1 - parity[0]
+            
+        def prettyprintlines(diff):
             for l in diff.splitlines(1):
                 line = cgi.escape(l)
                 if line.startswith('+'):
@@ -170,15 +179,15 @@
         for f in c:
             to = r.file(f).read(mmap1[f])
             tn = r.file(f).read(mmap2[f])
-            yield prettyprint(mdiff.unidiff(to, date1, tn, date2, f))
+            yield diffblock(mdiff.unidiff(to, date1, tn, date2, f), f, tn)
         for f in a:
             to = ""
             tn = r.file(f).read(mmap2[f])
-            yield prettyprint(mdiff.unidiff(to, date1, tn, date2, f))
+            yield diffblock(mdiff.unidiff(to, date1, tn, date2, f), f, tn)
         for f in d:
             to = r.file(f).read(mmap1[f])
             tn = ""
-            yield prettyprint(mdiff.unidiff(to, date1, tn, date2, f))
+            yield diffblock(mdiff.unidiff(to, date1, tn, date2, f), f, tn)
 
     def header(self):
         yield self.t("header", repo = self.reponame)