changeset 3209:9e8dd6114a4e

merged brendan's hgweb cleanups
author Thomas Arendsen Hein <thomas@intevation.de>
date Sat, 30 Sep 2006 12:34:31 +0200
parents a7377a238cec (current diff) e7b7906cc47e (diff)
children 7240f9e47144
files mercurial/context.py
diffstat 29 files changed, 163 insertions(+), 189 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/context.py	Sat Sep 30 10:29:57 2006 +0200
+++ b/mercurial/context.py	Sat Sep 30 12:34:31 2006 +0200
@@ -148,6 +148,12 @@
     def __eq__(self, other):
         return self._path == other._path and self._changeid == other._changeid
 
+    def filectx(self, fileid):
+        '''opens an arbitrary revision of the file without
+        opening a new filelog'''
+        return filectx(self._repo, self._path, fileid=fileid,
+                       filelog=self._filelog)
+
     def filerev(self): return self._filerev
     def filenode(self): return self._filenode
     def filelog(self): return self._filelog
--- a/mercurial/hgweb/hgweb_mod.py	Sat Sep 30 10:29:57 2006 +0200
+++ b/mercurial/hgweb/hgweb_mod.py	Sat Sep 30 12:34:31 2006 +0200
@@ -70,14 +70,12 @@
         if len(files) > self.maxfiles:
             yield self.t("fileellipses")
 
-    def siblings(self, siblings=[], rev=None, hiderev=None, **args):
-        if not rev:
-            rev = lambda x: ""
-        siblings = [s for s in siblings if s != nullid]
-        if len(siblings) == 1 and rev(siblings[0]) == hiderev:
+    def siblings(self, siblings=[], hiderev=None, **args):
+        siblings = [s for s in siblings if s.node() != nullid]
+        if len(siblings) == 1 and siblings[0].rev() == hiderev:
             return
         for s in siblings:
-            yield dict(node=hex(s), rev=rev(s), **args)
+            yield dict(node=hex(s.node()), rev=s.rev(), **args)
 
     def renamelink(self, fl, node):
         r = fl.renamed(node)
@@ -191,23 +189,19 @@
             cl = self.repo.changelog
             l = [] # build a list in forward order for efficiency
             for i in range(start, end):
-                n = cl.node(i)
-                changes = cl.read(n)
-                hn = hex(n)
+                ctx = self.repo.changectx(i)
+                n = ctx.node()
 
                 l.insert(0, {"parity": parity,
-                             "author": changes[1],
-                             "parent": self.siblings(cl.parents(n), cl.rev,
-                                                     cl.rev(n) - 1),
-                             "child": self.siblings(cl.children(n), cl.rev,
-                                                    cl.rev(n) + 1),
+                             "author": ctx.user(),
+                             "parent": self.siblings(ctx.parents(), i - 1),
+                             "child": self.siblings(ctx.children(), i + 1),
                              "changelogtag": self.showtag("changelogtag",n),
-                             "manifest": hex(changes[0]),
-                             "desc": changes[4],
-                             "date": changes[2],
-                             "files": self.listfilediffs(changes[3], n),
+                             "desc": ctx.description(),
+                             "date": ctx.date(),
+                             "files": self.listfilediffs(ctx.files(), n),
                              "rev": i,
-                             "node": hn})
+                             "node": hex(n)})
                 parity = 1 - parity
 
             for e in l:
@@ -223,7 +217,7 @@
 
         yield self.t(shortlog and 'shortlog' or 'changelog',
                      changenav=changenav,
-                     manifest=hex(mf),
+                     node=hex(cl.tip()),
                      rev=pos, changesets=count, entries=changelist,
                      archives=self.archivelist("tip"))
 
@@ -238,64 +232,59 @@
                 for i in range(cl.count() - 1, 0, -100):
                     l = []
                     for j in range(max(0, i - 100), i):
-                        n = cl.node(j)
-                        changes = cl.read(n)
-                        l.append((n, j, changes))
+                        ctx = self.repo.changectx(j)
+                        l.append(ctx)
                     l.reverse()
                     for e in l:
                         yield e
 
-            for n, i, changes in revgen():
+            for ctx in revgen():
                 miss = 0
                 for q in qw:
-                    if not (q in changes[1].lower() or
-                            q in changes[4].lower() or
-                            q in " ".join(changes[3][:20]).lower()):
+                    if not (q in ctx.user().lower() or
+                            q in ctx.description().lower() or
+                            q in " ".join(ctx.files()[:20]).lower()):
                         miss = 1
                         break
                 if miss:
                     continue
 
                 count += 1
-                hn = hex(n)
+                n = ctx.node()
 
                 yield self.t('searchentry',
                              parity=self.stripes(count),
-                             author=changes[1],
-                             parent=self.siblings(cl.parents(n), cl.rev),
-                             child=self.siblings(cl.children(n), cl.rev),
+                             author=ctx.user(),
+                             parent=self.siblings(ctx.parents()),
+                             child=self.siblings(ctx.children()),
                              changelogtag=self.showtag("changelogtag",n),
-                             manifest=hex(changes[0]),
-                             desc=changes[4],
-                             date=changes[2],
-                             files=self.listfilediffs(changes[3], n),
-                             rev=i,
-                             node=hn)
+                             desc=ctx.description(),
+                             date=ctx.date(),
+                             files=self.listfilediffs(ctx.files(), n),
+                             rev=ctx.rev(),
+                             node=hex(n))
 
                 if count >= self.maxchanges:
                     break
 
         cl = self.repo.changelog
-        mf = cl.read(cl.tip())[0]
 
         yield self.t('search',
                      query=query,
-                     manifest=hex(mf),
+                     node=hex(cl.tip()),
                      entries=changelist)
 
     def changeset(self, nodeid):
-        cl = self.repo.changelog
-        n = self.repo.lookup(nodeid)
-        nodeid = hex(n)
-        changes = cl.read(n)
-        p1 = cl.parents(n)[0]
+        ctx = self.repo.changectx(nodeid)
+        n = ctx.node()
+        parents = ctx.parents()
+        p1 = parents[0].node()
 
         files = []
-        mf = self.repo.manifest.read(changes[0])
         parity = 0
-        for f in changes[3]:
+        for f in ctx.files():
             files.append(self.t("filenodelink",
-                                filenode=hex(mf.get(f, nullid)), file=f,
+                                node=hex(n), file=f,
                                 parity=parity))
             parity = 1 - parity
 
@@ -304,22 +293,21 @@
 
         yield self.t('changeset',
                      diff=diff,
-                     rev=cl.rev(n),
-                     node=nodeid,
-                     parent=self.siblings(cl.parents(n), cl.rev),
-                     child=self.siblings(cl.children(n), cl.rev),
+                     rev=ctx.rev(),
+                     node=hex(n),
+                     parent=self.siblings(parents),
+                     child=self.siblings(ctx.children()),
                      changesettag=self.showtag("changesettag",n),
-                     manifest=hex(changes[0]),
-                     author=changes[1],
-                     desc=changes[4],
-                     date=changes[2],
+                     author=ctx.user(),
+                     desc=ctx.description(),
+                     date=ctx.date(),
                      files=files,
                      archives=self.archivelist(nodeid))
 
-    def filelog(self, f, filenode):
+    def filelog(self, fctx):
+        f = fctx.path()
         cl = self.repo.changelog
-        fl = self.repo.file(f)
-        filenode = hex(fl.lookup(filenode))
+        fl = fctx.filelog()
         count = fl.count()
 
         def entries(**map):
@@ -327,41 +315,31 @@
             parity = (count - 1) & 1
 
             for i in range(count):
+                ctx = fctx.filectx(i)
                 n = fl.node(i)
-                lr = fl.linkrev(n)
-                cn = cl.node(lr)
-                cs = cl.read(cl.node(lr))
 
                 l.insert(0, {"parity": parity,
-                             "filenode": hex(n),
                              "filerev": i,
                              "file": f,
-                             "node": hex(cn),
-                             "author": cs[1],
-                             "date": cs[2],
+                             "node": hex(ctx.node()),
+                             "author": ctx.user(),
+                             "date": ctx.date(),
                              "rename": self.renamelink(fl, n),
-                             "parent": self.siblings(fl.parents(n),
-                                                     fl.rev, file=f),
-                             "child": self.siblings(fl.children(n),
-                                                    fl.rev, file=f),
-                             "desc": cs[4]})
+                             "parent": self.siblings(fctx.parents(), file=f),
+                             "child": self.siblings(fctx.children(), file=f),
+                             "desc": ctx.description()})
                 parity = 1 - parity
 
             for e in l:
                 yield e
 
-        yield self.t("filelog", file=f, filenode=filenode, entries=entries)
+        yield self.t("filelog", file=f, node=hex(fctx.node()), entries=entries)
 
-    def filerevision(self, f, node):
-        fl = self.repo.file(f)
-        n = fl.lookup(node)
-        node = hex(n)
-        text = fl.read(n)
-        changerev = fl.linkrev(n)
-        cl = self.repo.changelog
-        cn = cl.node(changerev)
-        cs = cl.read(cn)
-        mfn = cs[0]
+    def filerevision(self, fctx):
+        f = fctx.path()
+        text = fctx.data()
+        fl = fctx.filelog()
+        n = fctx.filenode()
 
         mt = mimetypes.guess_type(f)[0]
         rawtext = text
@@ -378,23 +356,21 @@
 
         yield self.t("filerevision",
                      file=f,
-                     filenode=node,
                      path=_up(f),
                      text=lines(),
                      raw=rawtext,
                      mimetype=mt,
-                     rev=changerev,
-                     node=hex(cn),
-                     manifest=hex(mfn),
-                     author=cs[1],
-                     date=cs[2],
-                     parent=self.siblings(fl.parents(n), fl.rev, file=f),
-                     child=self.siblings(fl.children(n), fl.rev, file=f),
+                     rev=fctx.rev(),
+                     node=hex(fctx.node()),
+                     author=fctx.user(),
+                     date=fctx.date(),
+                     parent=self.siblings(fctx.parents(), file=f),
+                     child=self.siblings(fctx.children(), file=f),
                      rename=self.renamelink(fl, n),
-                     permissions=self.repo.manifest.read(mfn).execf(f))
+                     permissions=fctx.manifest().execf(f))
 
-    def fileannotate(self, f, node):
-        fctx = self.repo.filectx(f, fileid=node)
+    def fileannotate(self, fctx):
+        f = fctx.path()
         n = fctx.filenode()
         fl = fctx.filelog()
 
@@ -411,7 +387,6 @@
 
                 yield {"parity": parity,
                        "node": hex(f.node()),
-                       "filenode": hex(fnode),
                        "rev": f.rev(),
                        "author": name,
                        "file": f.path(),
@@ -419,27 +394,20 @@
 
         yield self.t("fileannotate",
                      file=f,
-                     filenode=node,
                      annotate=annotate,
                      path=_up(f),
                      rev=fctx.rev(),
                      node=hex(fctx.node()),
-                     manifest=hex(fctx.changectx().changeset()[0]),
                      author=fctx.user(),
                      date=fctx.date(),
                      rename=self.renamelink(fl, n),
-                     parent=self.siblings(fl.parents(n), fl.rev, file=f),
-                     child=self.siblings(fl.children(n), fl.rev, file=f),
+                     parent=self.siblings(fctx.parents(), file=f),
+                     child=self.siblings(fctx.children(), file=f),
                      permissions=fctx.manifest().execf(f))
 
-    def manifest(self, mnode, path):
-        man = self.repo.manifest
-        mn = man.lookup(mnode)
-        mnode = hex(mn)
-        mf = man.read(mn)
-        rev = man.rev(mn)
-        changerev = man.linkrev(mn)
-        node = self.repo.changelog.node(changerev)
+    def manifest(self, ctx, path):
+        mf = ctx.manifest()
+        node = ctx.node()
 
         files = {}
 
@@ -469,7 +437,6 @@
                     continue
 
                 yield {"file": full,
-                       "manifest": mnode,
                        "filenode": hex(fnode),
                        "parity": self.stripes(parity),
                        "basename": f,
@@ -487,13 +454,11 @@
 
                 yield {"parity": self.stripes(parity),
                        "path": os.path.join(path, f),
-                       "manifest": mnode,
                        "basename": f[:-1]}
                 parity += 1
 
         yield self.t("manifest",
-                     manifest=mnode,
-                     rev=rev,
+                     rev=ctx.rev(),
                      node=hex(node),
                      path=path,
                      up=_up(path),
@@ -503,7 +468,6 @@
 
     def tags(self):
         cl = self.repo.changelog
-        mf = cl.read(cl.tip())[0]
 
         i = self.repo.tagslist()
         i.reverse()
@@ -514,19 +478,17 @@
                 if notip and k == "tip": continue
                 yield {"parity": self.stripes(parity),
                        "tag": k,
-                       "tagmanifest": hex(cl.read(n)[0]),
                        "date": cl.read(n)[2],
                        "node": hex(n)}
                 parity += 1
 
         yield self.t("tags",
-                     manifest=hex(mf),
+                     node=hex(self.repo.changelog.tip()),
                      entries=lambda **x: entries(False, **x),
                      entriesnotip=lambda **x: entries(True, **x))
 
     def summary(self):
         cl = self.repo.changelog
-        mf = cl.read(cl.tip())[0]
 
         i = self.repo.tagslist()
         i.reverse()
@@ -550,8 +512,7 @@
                              parity = self.stripes(parity),
                              tag = k,
                              node = hex(n),
-                             date = t,
-                             tagmanifest = hex(m))
+                             date = t)
                 parity += 1
 
         def changelist(**map):
@@ -568,7 +529,6 @@
                     'shortlogentry',
                     parity = parity,
                     author = changes[1],
-                    manifest = hex(changes[0]),
                     desc = changes[4],
                     date = t,
                     rev = i,
@@ -577,8 +537,6 @@
 
             yield l
 
-        cl = self.repo.changelog
-        mf = cl.read(cl.tip())[0]
         count = cl.count()
         start = max(0, count - self.maxchanges)
         end = min(count, start + self.maxchanges)
@@ -589,29 +547,26 @@
                           self.repo.ui.config("web", "contact") or # deprecated
                           self.repo.ui.config("web", "author", "unknown")), # also
                  lastchange = (0, 0), # FIXME
-                 manifest = hex(mf),
                  tags = tagentries,
                  shortlog = changelist,
+                 node = hex(self.repo.changelog.tip()),
                  archives=self.archivelist("tip"))
 
     def filediff(self, file, changeset):
-        cl = self.repo.changelog
-        n = self.repo.lookup(changeset)
-        changeset = hex(n)
-        p1 = cl.parents(n)[0]
-        cs = cl.read(n)
-        mf = self.repo.manifest.read(cs[0])
+        ctx = self.repo.changectx(changeset)
+        n = ctx.node()
+        parents = ctx.parents()
+        p1 = parents[0].node()
 
         def diff(**map):
             yield self.diff(p1, n, [file])
 
         yield self.t("filediff",
                      file=file,
-                     filenode=hex(mf.get(file, nullid)),
-                     node=changeset,
-                     rev=self.repo.changelog.rev(n),
-                     parent=self.siblings(cl.parents(n), cl.rev),
-                     child=self.siblings(cl.children(n), cl.rev),
+                     node=hex(n),
+                     rev=ctx.rev(),
+                     parent=self.siblings(parents),
+                     child=self.siblings(ctx.children()),
                      diff=diff)
 
     archive_specs = {
@@ -693,6 +648,25 @@
                         form[name] = value
                     del form[k]
 
+            if form.has_key('manifest'):
+                changeid = req.form['manifest'][0]
+                try:
+                    req.changectx = self.repo.changectx(changeid)
+                except hg.RepoError:
+                    man = self.repo.manifest
+                    mn = man.lookup(changeid)
+                    req.changectx = self.repo.changectx(man.linkrev(mn))
+
+            if form.has_key('filenode'):
+                changeid = req.form['filenode'][0]
+                path = self.cleanpath(req.form['file'][0])
+                try:
+                    req.changectx = self.repo.changectx(changeid)
+                    req.filectx = req.changectx.filectx(path)
+                except hg.RepoError:
+                    req.filectx = self.repo.filectx(path, fileid=changeid)
+                    req.changectx = req.filectx.changectx()
+
         self.refresh()
 
         expand_form(req.form)
@@ -771,7 +745,7 @@
         req.write(self.changeset(req.form['node'][0]))
 
     def do_manifest(self, req):
-        req.write(self.manifest(req.form['manifest'][0],
+        req.write(self.manifest(req.changectx,
                                 self.cleanpath(req.form['path'][0])))
 
     def do_tags(self, req):
@@ -785,16 +759,13 @@
                                 req.form['node'][0]))
 
     def do_file(self, req):
-        req.write(self.filerevision(self.cleanpath(req.form['file'][0]),
-                                    req.form['filenode'][0]))
+        req.write(self.filerevision(req.filectx))
 
     def do_annotate(self, req):
-        req.write(self.fileannotate(self.cleanpath(req.form['file'][0]),
-                                    req.form['filenode'][0]))
+        req.write(self.fileannotate(req.filectx))
 
     def do_filelog(self, req):
-        req.write(self.filelog(self.cleanpath(req.form['file'][0]),
-                               req.form['filenode'][0]))
+        req.write(self.filelog(req.filectx))
 
     def do_heads(self, req):
         resp = " ".join(map(hex, self.repo.heads())) + "\n"
--- a/templates/changelog-gitweb.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/changelog-gitweb.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -20,7 +20,7 @@
 </div>
 
 <div class="page_nav">
-<a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;rev=#rev#;style=gitweb">shortlog</a> | changelog | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=manifest;manifest=#manifest#;path=/;style=gitweb">manifest</a>#archives%archiveentry#<br/>
+<a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;rev=#rev#;style=gitweb">shortlog</a> | changelog | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?mf=#node|short#;path=/;style=gitweb">manifest</a>#archives%archiveentry#<br/>
 <br/>
 #changenav%naventry#<br/>
 </div>
--- a/templates/changelog.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/changelog.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -8,7 +8,7 @@
 <div class="buttons">
 <a href="?sl=#rev#">shortlog</a>
 <a href="?cmd=tags">tags</a>
-<a href="?mf=#manifest|short#;path=/">manifest</a>
+<a href="?mf=#node|short#;path=/">manifest</a>
 #archives%archiveentry#
 <a type="application/rss+xml" href="?style=rss">rss</a>
 </div>
--- a/templates/changelogentry.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/changelogentry.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -19,7 +19,7 @@
   <td class="date">#date|date#</td>
  </tr>
  <tr>
-  <th class="files"><a href="?mf=#manifest|short#;path=/">files</a>:</th>
+  <th class="files"><a href="?mf=#node|short#;path=/">files</a>:</th>
   <td class="files">#files#</td>
  </tr>
 </table>
--- a/templates/changeset-gitweb.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/changeset-gitweb.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -10,7 +10,7 @@
 </div>
 
 <div class="page_nav">
-<a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;rev=#rev#;style=gitweb">shortlog</a> | <a href="?cmd=changelog;rev=#rev#;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=manifest;manifest=#manifest#;path=/;style=gitweb">manifest</a> | changeset | <a href="?cmd=changeset;node=#node#;style=raw">raw</a> #archives%archiveentry#<br/>
+<a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;rev=#rev#;style=gitweb">shortlog</a> | <a href="?cmd=changelog;rev=#rev#;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?mf=#node|short#;path=/;style=gitweb">manifest</a> | changeset | <a href="?cmd=changeset;node=#node#;style=raw">raw</a> #archives%archiveentry#<br/>
 </div>
 
 <div>
@@ -21,7 +21,7 @@
 <tr><td>author</td><td>#author|obfuscate#</td></tr>
 <tr><td></td><td>#date|date# (#date|age# ago)</td></tr>
 <tr><td>changeset</td><td style="font-family:monospace">#node|short#</td></tr>
-<tr><td>manifest</td><td style="font-family:monospace"><a class="list" href="?cmd=manifest;manifest=#manifest|short#;path=/;style=gitweb">#manifest|short#</a></td></tr>
+<tr><td>manifest</td><td style="font-family:monospace"><a class="list" href="?mf=#node|short#;path=/;style=gitweb">#node|short#</a></td></tr>
 #parent%changesetparent#
 #child%changesetchild#
 #changesettag#
--- a/templates/changeset.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/changeset.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -7,7 +7,7 @@
 <a href="?cl=#rev#">changelog</a>
 <a href="?sl=#rev#">shortlog</a>
 <a href="?cmd=tags">tags</a>
-<a href="?mf=#manifest|short#;path=/">manifest</a>
+<a href="?mf=#node|short#;path=/">manifest</a>
 <a href="?cs=#node|short#;style=raw">raw</a>
 #archives%archiveentry#
 </div>
--- a/templates/error-gitweb.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/error-gitweb.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -10,7 +10,7 @@
 </div>
 
 <div class="page_nav">
-<a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=manifest;manifest=#manifest#;path=/;style=gitweb">manifest</a><br/>
+<a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?mf=#node|short#;path=/;style=gitweb">manifest</a><br/>
 </div>
 
 <div>
--- a/templates/fileannotate-gitweb.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/fileannotate-gitweb.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -10,7 +10,7 @@
 </div>
 
 <div class="page_nav">
-<a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=manifest;manifest=#manifest#;path=#path|urlescape#;style=gitweb">manifest</a> | <a href="?cmd=changeset;node=#node#;style=gitweb">changeset</a> | <a href="?cmd=file;file=#file|urlescape#;filenode=#filenode#;style=gitweb">file</a> | <a href="?cmd=filelog;file=#file|urlescape#;filenode=#filenode#;style=gitweb">revisions</a> | annotate | <a href="?cmd=annotate;file=#file|urlescape#;filenode=#filenode#;style=raw">raw</a><br/>
+<a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?mf=#node|short#;path=#path|urlescape#;style=gitweb">manifest</a> | <a href="?cmd=changeset;node=#node#;style=gitweb">changeset</a> | <a href="?cmd=file;file=#file|urlescape#;filenode=#node|short#;style=gitweb">file</a> | <a href="?cmd=filelog;file=#file|urlescape#;filenode=#node|short#;style=gitweb">revisions</a> | annotate | <a href="?cmd=annotate;file=#file|urlescape#;filenode=#node|short#;style=raw">raw</a><br/>
 </div>
 
 <div class="title">#file|escape#</div>
@@ -24,7 +24,7 @@
 #child%fileannotatechild#
 <tr>
  <td class="metatag">manifest:</td>
- <td><a href="?mf=#manifest|short#;path=/;style=gitweb">#manifest|short#</a></td></tr>
+ <td><a href="?mf=#node|short#;path=/;style=gitweb">#node|short#</a></td></tr>
 <tr>
  <td class="metatag">author:</td>
  <td>#author|obfuscate#</td></tr>
--- a/templates/fileannotate.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/fileannotate.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -8,10 +8,10 @@
 <a href="?sl=#rev#">shortlog</a>
 <a href="?tags=">tags</a>
 <a href="?cs=#node|short#">changeset</a>
-<a href="?mf=#manifest|short#;path=#path|urlescape#">manifest</a>
-<a href="?f=#filenode|short#;file=#file|urlescape#">file</a>
-<a href="?fl=#filenode|short#;file=#file|urlescape#">revisions</a>
-<a href="?fa=#filenode|short#;file=#file|urlescape#;style=raw">raw</a>
+<a href="?mf=#node|short#;path=#path|urlescape#">manifest</a>
+<a href="?f=#node|short#;file=#file|urlescape#">file</a>
+<a href="?fl=#node|short#;file=#file|urlescape#">revisions</a>
+<a href="?fa=#node|short#;file=#file|urlescape#;style=raw">raw</a>
 </div>
 
 <h2>Annotate #file|escape#</h2>
--- a/templates/filediff.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/filediff.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -8,9 +8,9 @@
 <a href="?sl=#rev#">shortlog</a>
 <a href="?tags=">tags</a>
 <a href="?cs=#node|short#">changeset</a>
-<a href="?f=#filenode|short#;file=#file|urlescape#">file</a>
-<a href="?fl=#filenode|short#;file=#file|urlescape#">revisions</a>
-<a href="?fa=#filenode|short#;file=#file|urlescape#">annotate</a>
+<a href="?f=#node|short#;file=#file|urlescape#">file</a>
+<a href="?fl=#node|short#;file=#file|urlescape#">revisions</a>
+<a href="?fa=#node|short#;file=#file|urlescape#">annotate</a>
 <a href="?fd=#node|short#;file=#file|urlescape#;style=raw">raw</a>
 </div>
 
--- a/templates/filelog-gitweb.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/filelog-gitweb.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -10,7 +10,7 @@
 </div>
 
 <div class="page_nav">
-<a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=file;file=#file|urlescape#;filenode=#filenode#;style=gitweb">file</a> | revisions | <a href="?cmd=annotate;file=#file|urlescape#;filenode=#filenode#;style=gitweb">annotate</a> | <a href="?fl=#filenode|short#;file=#file|urlescape#;style=rss">rss</a><br/>
+<a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=file;file=#file|urlescape#;filenode=#node|short#;style=gitweb">file</a> | revisions | <a href="?cmd=annotate;file=#file|urlescape#;filenode=#node|short#;style=gitweb">annotate</a> | <a href="?fl=#node|short#;file=#file|urlescape#;style=rss">rss</a><br/>
 </div>
 
 <div class="title" >#file|urlescape#</div>
--- a/templates/filelog.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/filelog.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -10,8 +10,8 @@
 <a href="?cl=tip">changelog</a>
 <a href="?sl=tip">shortlog</a>
 <a href="?tags=">tags</a>
-<a href="?f=#filenode|short#;file=#file|urlescape#">file</a>
-<a href="?fa=#filenode|short#;file=#file|urlescape#">annotate</a>
+<a href="?f=#node|short#;file=#file|urlescape#">file</a>
+<a href="?fa=#node|short#;file=#file|urlescape#">annotate</a>
 <a type="application/rss+xml" href="?fl=0;file=#file|urlescape#;style=rss">rss</a>
 </div>
 
--- a/templates/filelogentry-rss.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/filelogentry-rss.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -1,6 +1,6 @@
 <item>
     <title>#desc|strip|firstline|strip|escape#</title>
-    <link>#url#?f=#filenode|short#;file=#file|urlescape#</link>
+    <link>#url#?f=#node|short#;file=#file|urlescape#</link>
     <description><![CDATA[#desc|strip|escape|addbreaks#]]></description>
     <author>#author|obfuscate#</author>
     <pubDate>#date|rfc822date#</pubDate>>
--- a/templates/filelogentry.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/filelogentry.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -6,9 +6,9 @@
  <tr>
   <th class="revision">revision #filerev#:</td>
   <td class="node">
-   <a href="?f=#filenode|short#;file=#file|urlescape#">#filenode|short#</a>
+   <a href="?f=#node|short#;file=#file|urlescape#">#node|short#</a>
    <a href="?fd=#node|short#;file=#file|urlescape#">(diff)</a>
-   <a href="?fa=#filenode|short#;file=#file|urlescape#">(annotate)</a>
+   <a href="?fa=#node|short#;file=#file|urlescape#">(annotate)</a>
   </td>
  </tr>
  #rename%filelogrename#
--- a/templates/filerevision-gitweb.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/filerevision-gitweb.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -10,7 +10,7 @@
 </div>
 
 <div class="page_nav">
-<a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?mf=#manifest|short#;path=#path|urlescape#;style=gitweb">manifest</a> | <a href="?cmd=changeset;node=#node#;style=gitweb">changeset</a> | file | <a href="?cmd=filelog;file=#file|urlescape#;filenode=#filenode#;style=gitweb">revisions</a> | <a href="?cmd=annotate;file=#file|urlescape#;filenode=#filenode#;style=gitweb">annotate</a> | <a href="?cmd=file;file=#file|urlescape#;filenode=#filenode#;style=raw">raw</a><br/>
+<a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?mf=#node|short#;path=#path|urlescape#;style=gitweb">manifest</a> | <a href="?cmd=changeset;node=#node#;style=gitweb">changeset</a> | file | <a href="?cmd=filelog;file=#file|urlescape#;filenode=#node|short#;style=gitweb">revisions</a> | <a href="?cmd=annotate;file=#file|urlescape#;filenode=#node|short#;style=gitweb">annotate</a> | <a href="?cmd=file;file=#file|urlescape#;filenode=#node#;style=raw">raw</a><br/>
 </div>
 
 <div class="title">#file|escape#</div>
@@ -24,7 +24,7 @@
 #child%fileannotatechild#
 <tr>
  <td class="metatag">manifest:</td>
- <td><a href="?mf=#manifest|short#;path=/;style=gitweb">#manifest|short#</a></td></tr>
+ <td><a href="?mf=#node|short#;path=/;style=gitweb">#node|short#</a></td></tr>
 <tr>
  <td class="metatag">author:</td>
  <td>#author|obfuscate#</td></tr>
--- a/templates/filerevision.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/filerevision.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -8,10 +8,10 @@
 <a href="?sl=#rev#">shortlog</a>
 <a href="?tags=">tags</a>
 <a href="?cs=#node|short#">changeset</a>
-<a href="?mf=#manifest|short#;path=#path|urlescape#">manifest</a>
-<a href="?fl=#filenode|short#;file=#file|urlescape#">revisions</a>
-<a href="?fa=#filenode|short#;file=#file|urlescape#">annotate</a>
-<a href="?f=#filenode|short#;file=#file|urlescape#;style=raw">raw</a>
+<a href="?mf=#node|short#;path=#path|urlescape#">manifest</a>
+<a href="?fl=#node|short#;file=#file|urlescape#">revisions</a>
+<a href="?fa=#node|short#;file=#file|urlescape#">annotate</a>
+<a href="?f=#node|short#;file=#file|urlescape#;style=raw">raw</a>
 </div>
 
 <h2>#file|escape#</h2>
--- a/templates/manifest-gitweb.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/manifest-gitweb.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -18,7 +18,7 @@
 <table cellspacing="0">
 <tr class="light">
 <td style="font-family:monospace">drwxr-xr-x</td>
-<td><a href="?cmd=manifest;manifest=#manifest#;path=#up|urlescape#;style=gitweb">[up]</a></td>
+<td><a href="?mf=#node|short#;path=#up|urlescape#;style=gitweb">[up]</a></td>
 <td class="link">&nbsp;</td>
 </tr>
 #dentries%manifestdirentry#
--- a/templates/manifest.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/manifest.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -1,5 +1,5 @@
 #header#
-<title>#repo|escape#: manifest #manifest|short#</title>
+<title>#repo|escape#: manifest for changeset #node|short#</title>
 </head>
 <body>
 
@@ -16,7 +16,7 @@
 <table cellpadding="0" cellspacing="0">
 <tr class="parity1">
   <td><tt>drwxr-xr-x</tt>&nbsp;
-  <td><a href="?mf=#manifest|short#;path=#up|urlescape#">[up]</a>
+  <td><a href="?mf=#node|short#;path=#up|urlescape#">[up]</a>
 #dentries%manifestdirentry#
 #fentries%manifestfileentry#
 </table>
--- a/templates/map	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/map	Sat Sep 30 12:34:31 2006 +0200
@@ -8,21 +8,21 @@
 naventry = '<a href="?cl=#rev#">#label|escape#</a> '
 navshortentry = '<a href="?sl=#rev#">#label|escape#</a> '
 filedifflink = '<a href="?fd=#node|short#;file=#file|urlescape#">#file|escape#</a> '
-filenodelink = '<a href="?f=#filenode|short#;file=#file|urlescape#">#file|escape#</a> '
+filenodelink = '<a href="?f=#node|short#;file=#file|urlescape#">#file|escape#</a> '
 fileellipses = '...'
 changelogentry = changelogentry.tmpl
 searchentry = changelogentry.tmpl
 changeset = changeset.tmpl
 manifest = manifest.tmpl
-manifestdirentry = '<tr class="parity#parity#"><td><tt>drwxr-xr-x</tt>&nbsp;<td><a href="?cmd=manifest;manifest=#manifest#;path=#path|urlescape#">#basename|escape#/</a>'
-manifestfileentry = '<tr class="parity#parity#"><td><tt>#permissions|permissions#</tt>&nbsp;<td><a href="?f=#filenode|short#;file=#file|urlescape#">#basename|escape#</a>'
+manifestdirentry = '<tr class="parity#parity#"><td><tt>drwxr-xr-x</tt>&nbsp;<td><a href="?mf=#node|short#;path=#path|urlescape#">#basename|escape#/</a>'
+manifestfileentry = '<tr class="parity#parity#"><td><tt>#permissions|permissions#</tt>&nbsp;<td><a href="?f=#node|short#;file=#file|urlescape#">#basename|escape#</a>'
 filerevision = filerevision.tmpl
 fileannotate = fileannotate.tmpl
 filediff = filediff.tmpl
 filelog = filelog.tmpl
 fileline = '<div class="parity#parity#"><span class="lineno">#linenumber#</span>#line|escape#</div>'
 filelogentry = filelogentry.tmpl
-annotateline = '<tr class="parity#parity#"><td class="annotate"><a href="?fa=#filenode|short#;file=#file|urlescape#">#author|obfuscate#@#rev#</a></td><td><pre>#line|escape#</pre></td></tr>'
+annotateline = '<tr class="parity#parity#"><td class="annotate"><a href="?fa=#node|short#;file=#file|urlescape#">#author|obfuscate#@#rev#</a></td><td><pre>#line|escape#</pre></td></tr>'
 difflineplus = '<span class="plusline">#line|escape#</span>'
 difflineminus = '<span class="minusline">#line|escape#</span>'
 difflineat = '<span class="atline">#line|escape#</span>'
--- a/templates/map-gitweb	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/map-gitweb	Sat Sep 30 12:34:31 2006 +0200
@@ -8,19 +8,19 @@
 naventry = '<a href="?cmd=changelog;rev=#rev#;style=gitweb">#label|escape#</a> '
 navshortentry = '<a href="?cmd=shortlog;rev=#rev#;style=gitweb">#label|escape#</a> '
 filedifflink = '<a href="?cmd=filediff;node=#node#;file=#file|urlescape#;style=gitweb">#file|escape#</a> '
-filenodelink = '<tr class="parity#parity#"><td><a class="list" href="">#file|escape#</a></td><td></td><td class="link"><a href="?cmd=file;filenode=#filenode#;file=#file|urlescape#;style=gitweb">file</a> | <a href="?fa=#filenode|short#;file=#file|urlescape#;style=gitweb">annotate</a> | <!-- FIXME: <a href="?fd=#filenode|short#;file=#file|urlescape#;style=gitweb">diff</a> | --> <a href="?cmd=filelog;filenode=#filenode|short#;file=#file|urlescape#;style=gitweb">revisions</a></td></tr>'
+filenodelink = '<tr class="parity#parity#"><td><a class="list" href="">#file|escape#</a></td><td></td><td class="link"><a href="?f=#node|short#;file=#file|urlescape#;style=gitweb">file</a> | <a href="?fa=#node|short#;file=#file|urlescape#;style=gitweb">annotate</a> | <!-- FIXME: <a href="?fd=#node|short#;file=#file|urlescape#;style=gitweb">diff</a> | --> <a href="?cmd=filelog;filenode=#node|short#;file=#file|urlescape#;style=gitweb">revisions</a></td></tr>'
 fileellipses = '...'
 changelogentry = changelogentry-gitweb.tmpl
 searchentry = changelogentry-gitweb.tmpl
 changeset = changeset-gitweb.tmpl
 manifest = manifest-gitweb.tmpl
-manifestdirentry = '<tr class="parity#parity#"><td style="font-family:monospace">drwxr-xr-x</td><td><a href="?mf=#manifest|short#;path=#path|urlescape#;style=gitweb">#basename|escape#/</a></td><td class="link"><a href="?mf=#manifest|short#;path=#path|urlescape#;style=gitweb">manifest</a></td></tr>'
-manifestfileentry = '<tr class="parity#parity#"><td style="font-family:monospace">#permissions|permissions#</td><td class="list"><a class="list" href="?f=#filenode|short#;file=#file|urlescape#;style=gitweb">#basename|escape#</a></td><td class="link"><a href="?f=#filenode|short#;file=#file|urlescape#;style=gitweb">file</a> | <a href="?fl=#filenode|short#;file=#file|urlescape#;style=gitweb">revisions</a> | <a href="?fa=#filenode|short#;file=#file|urlescape#;style=gitweb">annotate</a></td></tr>'
+manifestdirentry = '<tr class="parity#parity#"><td style="font-family:monospace">drwxr-xr-x</td><td><a href="?mf=#node|short#;path=#path|urlescape#;style=gitweb">#basename|escape#/</a></td><td class="link"><a href="?mf=#node|short#;path=#path|urlescape#;style=gitweb">manifest</a></td></tr>'
+manifestfileentry = '<tr class="parity#parity#"><td style="font-family:monospace">#permissions|permissions#</td><td class="list"><a class="list" href="?f=#node|short#;file=#file|urlescape#;style=gitweb">#basename|escape#</a></td><td class="link"><a href="?f=#node|short#;file=#file|urlescape#;style=gitweb">file</a> | <a href="?fl=#node|short#;file=#file|urlescape#;style=gitweb">revisions</a> | <a href="?fa=#node|short#;file=#file|urlescape#;style=gitweb">annotate</a></td></tr>'
 filerevision = filerevision-gitweb.tmpl
 fileannotate = fileannotate-gitweb.tmpl
 filelog = filelog-gitweb.tmpl
 fileline = '<div style="font-family:monospace" class="parity#parity#"><pre><span class="linenr">   #linenumber#</span> #line|escape#</pre></div>'
-annotateline = '<tr style="font-family:monospace" class="parity#parity#"><td class="linenr" style="text-align: right;"><a href="?fa=#filenode|short#;file=#file|urlescape#;style=gitweb">#author|obfuscate#@#rev#</a></td><td><pre>#line|escape#</pre></td></tr>'
+annotateline = '<tr style="font-family:monospace" class="parity#parity#"><td class="linenr" style="text-align: right;"><a href="?fa=#node|short#;file=#file|urlescape#;style=gitweb">#author|obfuscate#@#rev#</a></td><td><pre>#line|escape#</pre></td></tr>'
 difflineplus = '<div style="color:#008800;">#line|escape#</div>'
 difflineminus = '<div style="color:#cc0000;">#line|escape#</div>'
 difflineat = '<div style="color:#990099;">#line|escape#</div>'
@@ -36,7 +36,7 @@
 filerevchild = '<tr><td class="metatag">child:</td><td><a href="?cmd=file;file=#file|urlescape#;filenode=#node#;style=gitweb">#node|short#</a></td></tr>'
 fileannotatechild = '<tr><td class="metatag">child:</td><td><a href="?cmd=annotate;file=#file|urlescape#;filenode=#node#;style=gitweb">#node|short#</a></td></tr>'
 tags = tags-gitweb.tmpl
-tagentry = '<tr class="parity#parity#"><td class="age"><i>#date|age# ago</i></td><td><a class="list" href="?cmd=changeset;node=#node|short#;style=gitweb"><b>#tag|escape#</b></a></td><td class="link"><a href="?cmd=changeset;node=#node|short#;style=gitweb">changeset</a> | <a href="?cmd=changelog;rev=#node|short#;style=gitweb">changelog</a> |  <a href="?mf=#tagmanifest|short#;path=/;style=gitweb">manifest</a></td></tr>'
+tagentry = '<tr class="parity#parity#"><td class="age"><i>#date|age# ago</i></td><td><a class="list" href="?cmd=changeset;node=#node|short#;style=gitweb"><b>#tag|escape#</b></a></td><td class="link"><a href="?cmd=changeset;node=#node|short#;style=gitweb">changeset</a> | <a href="?cmd=changelog;rev=#node|short#;style=gitweb">changelog</a> |  <a href="?mf=#node|short#;path=/;style=gitweb">manifest</a></td></tr>'
 diffblock = '<pre>#lines#</pre>'
 changelogtag = '<tr><th class="tag">tag:</th><td class="tag">#tag|escape#</td></tr>'
 changesettag = '<tr><td>tag</td><td>#tag|escape#</td></tr>'
@@ -45,6 +45,6 @@
 filediffchild = '<tr><th class="child">child #rev#:</th><td class="child"><a href="?cmd=changeset;node=#node#;style=gitweb">#node|short#</a></td></tr>'
 filelogchild = '<tr><td align="right">child #rev#:&nbsp;</td><td><a href="?cmd=file;file=#file|urlescape#;filenode=#node#;style=gitweb">#node|short#</a></td></tr>'
 shortlog = shortlog-gitweb.tmpl
-shortlogentry = '<tr class="parity#parity#"><td class="age"><i>#date|age# ago</i></td><td><i>#author#</i></td><td><a class="list" href="?cmd=changeset;node=#node|short#;style=gitweb"><b>#desc|strip|firstline|escape#</b></a></td><td class="link"><a href="?cmd=changeset;node=#node|short#;style=gitweb">changeset</a> |  <a href="?cmd=manifest;manifest=#manifest|short#;path=/;style=gitweb">manifest</a></td></tr>'
-filelogentry = '<tr class="parity#parity#"><td class="age"><i>#date|age# ago</i></td><td><a class="list" href="?cmd=changeset;node=#node|short#;style=gitweb"><b>#desc|strip|firstline|escape#</b></a></td><td class="link"><a href="?f=#node|short#;file=#file|urlescape#;style=gitweb">file</a> | <!-- FIXME: <a href="?fd=#node|short#;file=#file|urlescape#;style=gitweb">diff</a> | --> <a href="?fa=#filenode|short#;file=#file|urlescape#;style=gitweb">annotate</a> #rename%filelogrename#</td></tr>'
+shortlogentry = '<tr class="parity#parity#"><td class="age"><i>#date|age# ago</i></td><td><i>#author#</i></td><td><a class="list" href="?cmd=changeset;node=#node|short#;style=gitweb"><b>#desc|strip|firstline|escape#</b></a></td><td class="link"><a href="?cmd=changeset;node=#node|short#;style=gitweb">changeset</a> |  <a href="?cmd=manifest;manifest=#node|short#;path=/;style=gitweb">manifest</a></td></tr>'
+filelogentry = '<tr class="parity#parity#"><td class="age"><i>#date|age# ago</i></td><td><a class="list" href="?cmd=changeset;node=#node|short#;style=gitweb"><b>#desc|strip|firstline|escape#</b></a></td><td class="link"><a href="?f=#node|short#;file=#file|urlescape#;style=gitweb">file</a> | <!-- FIXME: <a href="?fd=#node|short#;file=#file|urlescape#;style=gitweb">diff</a> | --> <a href="?fa=#node|short#;file=#file|urlescape#;style=gitweb">annotate</a> #rename%filelogrename#</td></tr>'
 archiveentry = ' | <a href="?ca=#node|short#;type=#type|urlescape#">#type|escape#</a> '
--- a/templates/search-gitweb.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/search-gitweb.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -1,6 +1,6 @@
 #header#
 <div class="page_nav">
-<a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=manifest;manifest=#manifest#;path=/;style=gitweb">manifest</a><br/>
+<a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?mf=#node|short#;path=/;style=gitweb">manifest</a><br/>
 </div>
 
 <h2>searching for #query|escape#</h2>
--- a/templates/search.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/search.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -7,7 +7,7 @@
 <a href="?cl=tip">changelog</a>
 <a href="?sl=tip">shortlog</a>
 <a href="?tags=">tags</a>
-<a href="?mf=#manifest|short#;path=/">manifest</a>
+<a href="?mf=#node|short#;path=/">manifest</a>
 </div>
 
 <h2>searching for #query|escape#</h2>
--- a/templates/shortlog-gitweb.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/shortlog-gitweb.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -19,7 +19,7 @@
 </form>
 </div>
 <div class="page_nav">
-<a href="?cmd=summary;style=gitweb">summary</a> | shortlog | <a href="?cmd=changelog;rev=#rev#;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=manifest;manifest=#manifest#;path=/;style=gitweb">manifest</a>#archives%archiveentry#<br/>
+<a href="?cmd=summary;style=gitweb">summary</a> | shortlog | <a href="?cmd=changelog;rev=#rev#;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?mf=#node|short#;path=/;style=gitweb">manifest</a>#archives%archiveentry#<br/>
 <br/>
 
 #changenav%navshortentry#<br/>
--- a/templates/shortlog.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/shortlog.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -8,7 +8,7 @@
 <div class="buttons">
 <a href="?cl=#rev#">changelog</a>
 <a href="?cmd=tags">tags</a>
-<a href="?mf=#manifest|short#;path=/">manifest</a>
+<a href="?mf=#node|short#;path=/">manifest</a>
 #archives%archiveentry#
 <a type="application/rss+xml" href="?style=rss">rss</a>
 </div>
--- a/templates/summary-gitweb.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/summary-gitweb.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -9,7 +9,7 @@
 <a href="http://www.selenic.com/mercurial/" title="Mercurial"><div style="float:right;">Mercurial</div></a><a href="?cmd=summary;style=gitweb">#repo|escape#</a> / summary
 </div>
 <div class="page_nav">
-summary | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=manifest;manifest=#manifest#;path=/;style=gitweb">manifest</a>#archives%archiveentry#
+summary | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | <a href="?cmd=tags;style=gitweb">tags</a> | <a href="?cmd=mf=#node|short#;path=/;style=gitweb">manifest</a>#archives%archiveentry#
 <br/>
 </div>
 
--- a/templates/tags-gitweb.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/tags-gitweb.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -10,7 +10,7 @@
 </div>
 
 <div class="page_nav">
-<a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | tags | <a href="?cmd=manifest;manifest=#manifest#;path=/;style=gitweb">manifest</a>
+<a href="?cmd=summary;style=gitweb">summary</a> | <a href="?cmd=shortlog;style=gitweb">shortlog</a> | <a href="?cmd=changelog;style=gitweb">changelog</a> | tags | <a href="?cmd=manifest;manifest=#node|short#;path=/;style=gitweb">manifest</a>
 <br/>
 </div>
 
--- a/templates/tags.tmpl	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/tags.tmpl	Sat Sep 30 12:34:31 2006 +0200
@@ -8,7 +8,7 @@
 <div class="buttons">
 <a href="?cl=tip">changelog</a>
 <a href="?sl=tip">shortlog</a>
-<a href="?mf=#manifest|short#;path=/">manifest</a>
+<a href="?mf=#node|short#;path=/">manifest</a>
 <a type="application/rss+xml" href="?cmd=tags;style=rss">rss</a>
 </div>
 
--- a/templates/template-vars.txt	Sat Sep 30 10:29:57 2006 +0200
+++ b/templates/template-vars.txt	Sat Sep 30 12:34:31 2006 +0200
@@ -3,14 +3,11 @@
 node          a changeset node
 changesets    total number of changesets
 file          a filename
-filenode      a file node
 filerev       a file revision
 filerevs      total number of file revisions
 up            the directory of the relevant file
 path          a path in the manifest, starting with "/"
 basename      a short pathname
-manifest      a manifest node
-manifestrev   a manifest revision
 date          a date string
 age           age in hours, days, etc
 line          a line of text (escaped)