--- a/mercurial/hgweb/hgweb_mod.py Thu Oct 05 10:07:40 2006 +0200
+++ b/mercurial/hgweb/hgweb_mod.py Thu Oct 05 10:15:22 2006 +0200
@@ -54,9 +54,9 @@
def archivelist(self, nodeid):
allowed = self.repo.ui.configlist("web", "allow_archive")
- for i in self.archives:
+ for i, spec in self.archive_specs.iteritems():
if i in allowed or self.repo.ui.configbool("web", "allow" + i):
- yield {"type" : i, "node" : nodeid, "url": ""}
+ yield {"type" : i, "extension" : spec[2], "node" : nodeid}
def listfiles(self, files, mf):
for f in files[:self.maxfiles]:
@@ -645,9 +645,80 @@
form[name] = value
del form[k]
+ def rewrite_request(req):
+ '''translate new web interface to traditional format'''
+
+ def spliturl(req):
+ def firstitem(query):
+ return query.split('&', 1)[0].split(';', 1)[0]
+
+ base = ''
+ if req.env.has_key('REPO_NAME'):
+ base = '/' + req.env['REPO_NAME']
+ elif req.env.get('SCRIPT_NAME'):
+ base = req.env['SCRIPT_NAME']
+
+ pi = req.env.get('PATH_INFO')
+ if pi:
+ if pi.startswith(base):
+ if len(pi) > len(base):
+ base += '/'
+ query = pi[len(base):]
+ else:
+ if req.env.has_key('REPO_NAME'):
+ # We are using hgwebdir
+ base += '/'
+ else:
+ base += '?'
+ query = firstitem(req.env['QUERY_STRING'])
+ else:
+ base += '/'
+ query = pi[1:]
+ else:
+ base += '?'
+ query = firstitem(req.env['QUERY_STRING'])
+
+ return (base, query)
+
+ req.url, query = spliturl(req)
+
+ if req.form.has_key('cmd'):
+ # old style
+ return
+
+ args = query.split('/', 2)
+ if not args or not args[0]:
+ return
+
+ cmd = args.pop(0)
+ style = cmd.rfind('-')
+ if style != -1:
+ req.form['style'] = [cmd[:style]]
+ cmd = cmd[style+1:]
+ # avoid accepting e.g. style parameter as command
+ if hasattr(self, 'do_' + cmd):
+ req.form['cmd'] = [cmd]
+
+ if args and args[0]:
+ node = args.pop(0)
+ req.form['node'] = [node]
+ if args:
+ req.form['file'] = args
+
+ if cmd == 'static':
+ req.form['file'] = req.form['node']
+ elif cmd == 'archive':
+ fn = req.form['node'][0]
+ for type_, spec in self.archive_specs.iteritems():
+ ext = spec[2]
+ if fn.endswith(ext):
+ req.form['node'] = [fn[:-len(ext)]]
+ req.form['type'] = [type_]
+
self.refresh()
expand_form(req.form)
+ rewrite_request(req)
m = os.path.join(self.templatepath, "map")
style = self.repo.ui.config("web", "style", "")
@@ -659,18 +730,21 @@
if os.path.isfile(p):
m = p
- port = req.env["SERVER_PORT"]
- port = port != "80" and (":" + port) or ""
- uri = req.env["REQUEST_URI"]
- if "?" in uri:
- uri = uri.split("?")[0]
- url = "http://%s%s%s" % (req.env["SERVER_NAME"], port, uri)
+ if not req.url:
+ port = req.env["SERVER_PORT"]
+ port = port != "80" and (":" + port) or ""
+ uri = req.env["REQUEST_URI"]
+ if "?" in uri:
+ uri = uri.split("?")[0]
+ req.url = "http://%s%s%s" % (req.env["SERVER_NAME"], port, uri)
+
if not self.reponame:
self.reponame = (self.repo.ui.config("web", "name")
- or uri.strip('/') or self.repo.root)
+ or req.env.get('REPO_NAME')
+ or req.url.strip('/') or self.repo.root)
self.t = templater.templater(m, templater.common_filters,
- defaults={"url": url,
+ defaults={"url": req.url,
"repo": self.reponame,
"header": header,
"footer": footer,
@@ -723,6 +797,30 @@
else:
return 0
+ def do_log(self, req):
+ if req.form.has_key('file') and req.form['file'][0]:
+ self.do_filelog(req)
+ else:
+ self.do_changelog(req)
+
+ def do_rev(self, req):
+ self.do_changeset(req)
+
+ def do_file(self, req):
+ path = req.form.get('file', [''])[0]
+ if path:
+ try:
+ req.write(self.filerevision(self.filectx(req)))
+ return
+ except hg.RepoError:
+ pass
+ path = self.cleanpath(path)
+
+ req.write(self.manifest(self.changectx(req), '/' + path))
+
+ def do_diff(self, req):
+ self.do_filediff(req)
+
def do_changelog(self, req, shortlog = False):
if req.form.has_key('node'):
ctx = self.changectx(req)
@@ -759,9 +857,6 @@
def do_filediff(self, req):
req.write(self.filediff(self.filectx(req)))
- def do_file(self, req):
- req.write(self.filerevision(self.filectx(req)))
-
def do_annotate(self, req):
req.write(self.fileannotate(self.filectx(req)))
--- a/mercurial/hgweb/hgwebdir_mod.py Thu Oct 05 10:07:40 2006 +0200
+++ b/mercurial/hgweb/hgwebdir_mod.py Thu Oct 05 10:15:22 2006 +0200
@@ -85,9 +85,10 @@
def archivelist(ui, nodeid, url):
allowed = ui.configlist("web", "allow_archive")
- for i in ['zip', 'gz', 'bz2']:
- if i in allowed or ui.configbool("web", "allow" + i):
- yield {"type" : i, "node": nodeid, "url": url}
+ for i in [('zip', '.zip'), ('gz', '.tar.gz'), ('bz2', '.tar.bz2')]:
+ if i[0] in allowed or ui.configbool("web", "allow" + i[0]):
+ yield {"type" : i[0], "extension": i[1],
+ "node": nodeid, "url": url}
def entries(sortcolumn="", descending=False, **map):
rows = []
@@ -101,7 +102,7 @@
get = u.config
url = ('/'.join([req.env["REQUEST_URI"].split('?')[0], name])
- .replace("//", "/"))
+ .replace("//", "/")) + '/'
# update time with local timezone
try:
@@ -142,9 +143,22 @@
yield row
virtual = req.env.get("PATH_INFO", "").strip('/')
- if virtual:
- real = dict(self.repos).get(virtual)
+ if virtual.startswith('static/'):
+ static = os.path.join(templater.templatepath(), 'static')
+ fname = virtual[7:]
+ req.write(staticfile(static, fname, req) or
+ tmpl('error', error='%r not found' % fname))
+ elif virtual:
+ while virtual:
+ real = dict(self.repos).get(virtual)
+ if real:
+ break
+ up = virtual.rfind('/')
+ if up < 0:
+ break
+ virtual = virtual[:up]
if real:
+ req.env['REPO_NAME'] = virtual
try:
hgweb(real).run_wsgi(req)
except IOError, inst:
--- a/mercurial/hgweb/server.py Thu Oct 05 10:07:40 2006 +0200
+++ b/mercurial/hgweb/server.py Thu Oct 05 10:15:22 2006 +0200
@@ -71,7 +71,7 @@
env['REQUEST_METHOD'] = self.command
env['SERVER_NAME'] = self.server.server_name
env['SERVER_PORT'] = str(self.server.server_port)
- env['REQUEST_URI'] = "/"
+ env['REQUEST_URI'] = self.path
env['PATH_INFO'] = path_info
if query:
env['QUERY_STRING'] = query
--- a/templates/changelog.tmpl Thu Oct 05 10:07:40 2006 +0200
+++ b/templates/changelog.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -1,24 +1,23 @@
#header#
<title>#repo|escape#: changelog</title>
<link rel="alternate" type="application/rss+xml"
- href="?cmd=changelog;style=rss" title="RSS feed for #repo|escape#">
+ href="#url#rss-log" title="RSS feed for #repo|escape#">
</head>
<body>
<div class="buttons">
-<a href="?sl=#rev#">shortlog</a>
-<a href="?cmd=tags">tags</a>
-<a href="?mf=#node|short#;path=/">manifest</a>
+<a href="#url#shortlog/#rev#">shortlog</a>
+<a href="#url#tags">tags</a>
+<a href="#url#file/#node|short#">manifest</a>
#archives%archiveentry#
-<a type="application/rss+xml" href="?style=rss">rss</a>
+<a type="application/rss+xml" href="#url#rss-log">rss</a>
</div>
<h2>changelog for #repo|escape#</h2>
-<form action="#">
+<form action="#url#log">
<p>
<label for="search1">search:</label>
-<input type="hidden" name="cmd" value="changelog">
<input name="rev" id="search1" type="text" size="30">
navigate: <small class="navigate">#changenav%naventry#</small>
</p>
@@ -26,10 +25,9 @@
#entries%changelogentry#
-<form action="#">
+<form action="#url#log">
<p>
<label for="search2">search:</label>
-<input type="hidden" name="cmd" value="changelog">
<input name="rev" id="search2" type="text" size="30">
navigate: <small class="navigate">#changenav%naventry#</small>
</p>
--- a/templates/changelogentry.tmpl Thu Oct 05 10:07:40 2006 +0200
+++ b/templates/changelogentry.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -5,7 +5,7 @@
</tr>
<tr>
<th class="revision">changeset #rev#:</th>
- <td class="node"><a href="?cs=#node|short#">#node|short#</a></td>
+ <td class="node"><a href="#url#rev/#node|short#">#node|short#</a></td>
</tr>
#parent%changelogparent#
#child%changelogchild#
@@ -19,7 +19,7 @@
<td class="date">#date|date#</td>
</tr>
<tr>
- <th class="files"><a href="?mf=#node|short#;path=/">files</a>:</th>
+ <th class="files"><a href="#url#file/#node|short#/">files</a>:</th>
<td class="files">#files#</td>
</tr>
</table>
--- a/templates/changeset.tmpl Thu Oct 05 10:07:40 2006 +0200
+++ b/templates/changeset.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -4,11 +4,11 @@
<body>
<div class="buttons">
-<a href="?cl=#rev#">changelog</a>
-<a href="?sl=#rev#">shortlog</a>
-<a href="?cmd=tags">tags</a>
-<a href="?mf=#node|short#;path=/">manifest</a>
-<a href="?cs=#node|short#;style=raw">raw</a>
+<a href="#url#log/#rev#">changelog</a>
+<a href="#url#shortlog/#rev#">shortlog</a>
+<a href="#url#tags">tags</a>
+<a href="#url#file/#node|short#">manifest</a>
+<a href="#url#raw-rev/#node|short#">raw</a>
#archives%archiveentry#
</div>
@@ -17,7 +17,7 @@
<table id="changesetEntry">
<tr>
<th class="changeset">changeset #rev#:</th>
- <td class="changeset"><a href="?cs=#node|short#">#node|short#</a></td>
+ <td class="changeset"><a href="#url#rev/#node|short#">#node|short#</a></td>
</tr>
#parent%changesetparent#
#child%changesetchild#
--- a/templates/fileannotate.tmpl Thu Oct 05 10:07:40 2006 +0200
+++ b/templates/fileannotate.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -4,14 +4,14 @@
<body>
<div class="buttons">
-<a href="?cl=#rev#">changelog</a>
-<a href="?sl=#rev#">shortlog</a>
-<a href="?tags=">tags</a>
-<a href="?cs=#node|short#">changeset</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>
+<a href="#url#log/#rev#">changelog</a>
+<a href="#url#shortlog/#rev#">shortlog</a>
+<a href="#url#tags">tags</a>
+<a href="#url#rev/#node|short#">changeset</a>
+<a href="#url#file/#node|short##path|urlescape#">manifest</a>
+<a href="#url#file/#node|short#/#file|urlescape#">file</a>
+<a href="#url#log/#node|short#/#file|urlescape#">revisions</a>
+<a href="#url#raw-annotate/#node|short#/#file|urlescape#">raw</a>
</div>
<h2>Annotate #file|escape#</h2>
@@ -19,7 +19,7 @@
<table>
<tr>
<td class="metatag">changeset #rev#:</td>
- <td><a href="?cs=#node|short#">#node|short#</a></td></tr>
+ <td><a href="#url#rev/#node|short#">#node|short#</a></td></tr>
#rename%filerename#
#parent%fileannotateparent#
#child%fileannotatechild#
--- a/templates/filediff.tmpl Thu Oct 05 10:07:40 2006 +0200
+++ b/templates/filediff.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -4,14 +4,14 @@
<body>
<div class="buttons">
-<a href="?cl=#rev#">changelog</a>
-<a href="?sl=#rev#">shortlog</a>
-<a href="?tags=">tags</a>
-<a href="?cs=#node|short#">changeset</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>
+<a href="#url#log/#rev#">changelog</a>
+<a href="#url#shortlog/#rev#">shortlog</a>
+<a href="#url#tags">tags</a>
+<a href="#url#rev/#node|short#">changeset</a>
+<a href="#url#file/#node|short#/#file|urlescape#">file</a>
+<a href="#url#log/#node|short#/#file|urlescape#">revisions</a>
+<a href="#url#annotate/#node|short#/#file|urlescape#">annotate</a>
+<a href="#url#raw-diff/#node|short#/#file|urlescape#">raw</a>
</div>
<h2>#file|escape#</h2>
@@ -19,7 +19,7 @@
<table id="filediffEntry">
<tr>
<th class="revision">revision #rev#:</th>
- <td class="revision"><a href="?cs=#node|short#">#node|short#</a></td>
+ <td class="revision"><a href="#url#rev/#node|short#">#node|short#</a></td>
</tr>
#parent%filediffparent#
#child%filediffchild#
--- a/templates/filelog.tmpl Thu Oct 05 10:07:40 2006 +0200
+++ b/templates/filelog.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -1,18 +1,18 @@
#header#
<title>#repo|escape#: #file|escape# history</title>
<link rel="alternate" type="application/rss+xml"
- href="?fl=0;file=#file|urlescape#;style=rss" title="RSS feed for #repo|escape#:#file#">
+ href="#url#rss-log/tip/#file|urlescape#" title="RSS feed for #repo|escape#:#file#">
</head>
</head>
<body>
<div class="buttons">
-<a href="?cl=tip">changelog</a>
-<a href="?sl=tip">shortlog</a>
-<a href="?tags=">tags</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>
+<a href="#url#log">changelog</a>
+<a href="#url#shortlog">shortlog</a>
+<a href="#url#tags">tags</a>
+<a href="#url#file/#node|short#/#file|urlescape#">file</a>
+<a href="#url#annotate/#node|short#/#file|urlescape#">annotate</a>
+<a type="application/rss+xml" href="#url#rss-log/tip/#file|urlescape#">rss</a>
</div>
<h2>#file|escape# revision history</h2>
--- a/templates/filelogentry.tmpl Thu Oct 05 10:07:40 2006 +0200
+++ b/templates/filelogentry.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -1,14 +1,14 @@
<table class="logEntry parity#parity#">
<tr>
<th class="age">#date|age# ago:</th>
- <th class="firstline"><a href="?cs=#node|short#">#desc|strip|firstline|escape#</a></th>
+ <th class="firstline"><a href="#url#rev/#node|short#">#desc|strip|firstline|escape#</a></th>
</tr>
<tr>
<th class="revision">revision #filerev#:</td>
<td class="node">
- <a href="?f=#node|short#;file=#file|urlescape#">#node|short#</a>
- <a href="?fd=#node|short#;file=#file|urlescape#">(diff)</a>
- <a href="?fa=#node|short#;file=#file|urlescape#">(annotate)</a>
+ <a href="#url#file/#node|short#/#file|urlescape#">#node|short#</a>
+ <a href="#url#diff/#node|short#/#file|urlescape#">(diff)</a>
+ <a href="#url#annotate/#node|short#/#file|urlescape#">(annotate)</a>
</td>
</tr>
#rename%filelogrename#
--- a/templates/filerevision.tmpl Thu Oct 05 10:07:40 2006 +0200
+++ b/templates/filerevision.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -4,14 +4,14 @@
<body>
<div class="buttons">
-<a href="?cl=#rev#">changelog</a>
-<a href="?sl=#rev#">shortlog</a>
-<a href="?tags=">tags</a>
-<a href="?cs=#node|short#">changeset</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>
+<a href="#url#log/#rev#">changelog</a>
+<a href="#url#shortlog/#rev#">shortlog</a>
+<a href="#url#tags">tags</a>
+<a href="#url#rev/#node|short#">changeset</a>
+<a href="#url#file/#node|short##path|urlescape#">manifest</a>
+<a href="#url#log/#node|short#/#file|urlescape#">revisions</a>
+<a href="#url#annotate/#node|short#/#file|urlescape#">annotate</a>
+<a href="#url#raw-file/#node|short#/#file|urlescape#">raw</a>
</div>
<h2>#file|escape#</h2>
@@ -19,7 +19,7 @@
<table>
<tr>
<td class="metatag">changeset #rev#:</td>
- <td><a href="?cs=#node|short#">#node|short#</a></td></tr>
+ <td><a href="#url#rev/#node|short#">#node|short#</a></td></tr>
#rename%filerename#
#parent%filerevparent#
#child%filerevchild#
--- a/templates/header.tmpl Thu Oct 05 10:07:40 2006 +0200
+++ b/templates/header.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -3,6 +3,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
-<link rel="icon" href="?static=hgicon.png" type="image/png">
+<link rel="icon" href="#url#static/hgicon.png" type="image/png">
<meta name="robots" content="index, nofollow" />
-<link rel="stylesheet" href="?static=style.css" type="text/css" />
+<link rel="stylesheet" href="#url#static/style.css" type="text/css" />
--- a/templates/manifest.tmpl Thu Oct 05 10:07:40 2006 +0200
+++ b/templates/manifest.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -4,10 +4,10 @@
<body>
<div class="buttons">
-<a href="?cl=#rev#">changelog</a>
-<a href="?sl=#rev#">shortlog</a>
-<a href="?tags=">tags</a>
-<a href="?cs=#node|short#">changeset</a>
+<a href="#url#log/#rev#">changelog</a>
+<a href="#url#shortlog/#rev#">shortlog</a>
+<a href="#url#tags">tags</a>
+<a href="#url#rev/#node|short#">changeset</a>
#archives%archiveentry#
</div>
@@ -16,7 +16,7 @@
<table cellpadding="0" cellspacing="0">
<tr class="parity1">
<td><tt>drwxr-xr-x</tt>
- <td><a href="?mf=#node|short#;path=#up|urlescape#">[up]</a>
+ <td><a href="#url#file/#node|short##up|urlescape#">[up]</a>
#dentries%manifestdirentry#
#fentries%manifestfileentry#
</table>
--- a/templates/map Thu Oct 05 10:07:40 2006 +0200
+++ b/templates/map Thu Oct 05 10:15:22 2006 +0200
@@ -5,49 +5,49 @@
changelog = changelog.tmpl
shortlog = shortlog.tmpl
shortlogentry = shortlogentry.tmpl
-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=#node|short#;file=#file|urlescape#">#file|escape#</a> '
+naventry = '<a href="#url#log/#rev#">#label|escape#</a> '
+navshortentry = '<a href="#url#shortlog/#rev#">#label|escape#</a> '
+filedifflink = '<a href="#url#diff/#node|short#/#file|urlescape#">#file|escape#</a> '
+filenodelink = '<a href="#url#file/#node|short#/#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> <td><a href="?mf=#node|short#;path=#path|urlescape#">#basename|escape#/</a>'
-manifestfileentry = '<tr class="parity#parity#"><td><tt>#permissions|permissions#</tt> <td><a href="?f=#node|short#;file=#file|urlescape#">#basename|escape#</a>'
+manifestdirentry = '<tr class="parity#parity#"><td><tt>drwxr-xr-x</tt> <td><a href="#url#file/#node|short##path|urlescape#">#basename|escape#/</a>'
+manifestfileentry = '<tr class="parity#parity#"><td><tt>#permissions|permissions#</tt> <td><a href="#url#file/#node|short#/#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=#node|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="#url#annotate/#node|short#/#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>'
diffline = '#line|escape#'
-changelogparent = '<tr><th class="parent">parent #rev#:</th><td class="parent"><a href="?cs=#node|short#">#node|short#</a></td></tr>'
-changesetparent = '<tr><th class="parent">parent #rev#:</th><td class="parent"><a href="?cs=#node|short#">#node|short#</a></td></tr>'
-filerevparent = '<tr><td class="metatag">parent:</td><td><a href="?f=#node|short#;file=#file|urlescape#">#node|short#</a></td></tr>'
-filerename = '<tr><td class="metatag">parent:</td><td><a href="?f=#node|short#;file=#file|urlescape#">#file|escape#@#node|short#</a></td></tr>'
-filelogrename = '<tr><th>base:</th><td><a href="?f=#node|short#;file=#file|urlescape#">#file|escape#@#node|short#</a></td></tr>'
-fileannotateparent = '<tr><td class="metatag">parent:</td><td><a href="?fa=#node|short#;file=#file|urlescape#">#node|short#</a></td></tr>'
-changesetchild = '<tr><th class="child">child #rev#:</th><td class="child"><a href="?cs=#node|short#">#node|short#</a></td></tr>'
-changelogchild = '<tr><th class="child">child #rev#:</th><td class="child"><a href="?cs=#node|short#">#node|short#</a></td></tr>'
-filerevchild = '<tr><td class="metatag">child:</td><td><a href="?f=#node|short#;file=#file|urlescape#">#node|short#</a></td></tr>'
-fileannotatechild = '<tr><td class="metatag">child:</td><td><a href="?fa=#node|short#;file=#file|urlescape#">#node|short#</a></td></tr>'
+changelogparent = '<tr><th class="parent">parent #rev#:</th><td class="parent"><a href="#url#rev/#node|short#">#node|short#</a></td></tr>'
+changesetparent = '<tr><th class="parent">parent #rev#:</th><td class="parent"><a href="#url#rev/#node|short#">#node|short#</a></td></tr>'
+filerevparent = '<tr><td class="metatag">parent:</td><td><a href="#url#file/#node|short#/#file|urlescape#">#node|short#</a></td></tr>'
+filerename = '<tr><td class="metatag">parent:</td><td><a href="#url#file/#node|short#/#file|urlescape#">#file|escape#@#node|short#</a></td></tr>'
+filelogrename = '<tr><th>base:</th><td><a href="#url#file/#node|short#/#file|urlescape#">#file|escape#@#node|short#</a></td></tr>'
+fileannotateparent = '<tr><td class="metatag">parent:</td><td><a href="#url#annotate/#node|short#/#file|urlescape#">#node|short#</a></td></tr>'
+changesetchild = '<tr><th class="child">child #rev#:</th><td class="child"><a href="#url#rev/#node|short#">#node|short#</a></td></tr>'
+changelogchild = '<tr><th class="child">child #rev#:</th><td class="child"><a href="#url#rev/#node|short#">#node|short#</a></td></tr>'
+filerevchild = '<tr><td class="metatag">child:</td><td><a href="#url#file/#node|short#/#file|urlescape#">#node|short#</a></td></tr>'
+fileannotatechild = '<tr><td class="metatag">child:</td><td><a href="#url#annotate/#node|short#/#file|urlescape#">#node|short#</a></td></tr>'
tags = tags.tmpl
-tagentry = '<li class="tagEntry parity#parity#"><tt class="node">#node#</tt> <a href="?cs=#node|short#">#tag|escape#</a></li>'
+tagentry = '<li class="tagEntry parity#parity#"><tt class="node">#node#</tt> <a href="#url#rev/#node|short#">#tag|escape#</a></li>'
diffblock = '<pre class="parity#parity#">#lines#</pre>'
changelogtag = '<tr><th class="tag">tag:</th><td class="tag">#tag|escape#</td></tr>'
changesettag = '<tr><th class="tag">tag:</th><td class="tag">#tag|escape#</td></tr>'
-filediffparent = '<tr><th class="parent">parent #rev#:</th><td class="parent"><a href="?cs=#node|short#">#node|short#</a></td></tr>'
-filelogparent = '<tr><th>parent #rev#:</th><td><a href="?f=#node|short#;file=#file|urlescape#">#node|short#</a></td></tr>'
-filediffchild = '<tr><th class="child">child #rev#:</th><td class="child"><a href="?cs=#node|short#">#node|short#</a></td></tr>'
-filelogchild = '<tr><th>child #rev#:</th><td><a href="?f=#node|short#;file=#file|urlescape#">#node|short#</a></td></tr>'
-indexentry = '<tr class="parity#parity#"><td><a href="#url#">#name|escape#</a></td><td>#description#</td><td>#contact|obfuscate#</td><td class="age">#lastchange|age# ago</td><td class="indexlinks"><a href="#url#?cl=tip;style=rss">RSS</a> #archives%archiveentry#</td></tr>'
+filediffparent = '<tr><th class="parent">parent #rev#:</th><td class="parent"><a href="#url#rev/#node|short#">#node|short#</a></td></tr>'
+filelogparent = '<tr><th>parent #rev#:</th><td><a href="#url#file/#node|short#/#file|urlescape#">#node|short#</a></td></tr>'
+filediffchild = '<tr><th class="child">child #rev#:</th><td class="child"><a href="#url#rev/#node|short#">#node|short#</a></td></tr>'
+filelogchild = '<tr><th>child #rev#:</th><td><a href="#url#file/#node|short#/#file|urlescape#">#node|short#</a></td></tr>'
+indexentry = '<tr class="parity#parity#"><td><a href="#url#">#name|escape#</a></td><td>#description#</td><td>#contact|obfuscate#</td><td class="age">#lastchange|age# ago</td><td class="indexlinks"><a href="#url#rss-log">RSS</a> #archives%archiveentry#</td></tr>'
index = index.tmpl
-archiveentry = '<a href="#url#?ca=#node|short#;type=#type|urlescape#">#type|escape#</a> '
+archiveentry = '<a href="#url#archive/#node|short##extension|urlescape#">#type|escape#</a> '
notfound = notfound.tmpl
error = error.tmpl
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/templates/map-old Thu Oct 05 10:15:22 2006 +0200
@@ -0,0 +1,53 @@
+default = 'changelog'
+header = old/header.tmpl
+footer = footer.tmpl
+search = old/search.tmpl
+changelog = old/changelog.tmpl
+shortlog = old/shortlog.tmpl
+shortlogentry = old/shortlogentry.tmpl
+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=#node|short#;file=#file|urlescape#">#file|escape#</a> '
+fileellipses = '...'
+changelogentry = old/changelogentry.tmpl
+searchentry = old/changelogentry.tmpl
+changeset = old/changeset.tmpl
+manifest = old/manifest.tmpl
+manifestdirentry = '<tr class="parity#parity#"><td><tt>drwxr-xr-x</tt> <td><a href="?mf=#node|short#;path=#path|urlescape#">#basename|escape#/</a>'
+manifestfileentry = '<tr class="parity#parity#"><td><tt>#permissions|permissions#</tt> <td><a href="?f=#node|short#;file=#file|urlescape#">#basename|escape#</a>'
+filerevision = old/filerevision.tmpl
+fileannotate = old/fileannotate.tmpl
+filediff = old/filediff.tmpl
+filelog = old/filelog.tmpl
+fileline = '<div class="parity#parity#"><span class="lineno">#linenumber#</span>#line|escape#</div>'
+filelogentry = old/filelogentry.tmpl
+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>'
+diffline = '#line|escape#'
+changelogparent = '<tr><th class="parent">parent #rev#:</th><td class="parent"><a href="?cs=#node|short#">#node|short#</a></td></tr>'
+changesetparent = '<tr><th class="parent">parent #rev#:</th><td class="parent"><a href="?cs=#node|short#">#node|short#</a></td></tr>'
+filerevparent = '<tr><td class="metatag">parent:</td><td><a href="?f=#node|short#;file=#file|urlescape#">#node|short#</a></td></tr>'
+filerename = '<tr><td class="metatag">parent:</td><td><a href="?f=#node|short#;file=#file|urlescape#">#file|escape#@#node|short#</a></td></tr>'
+filelogrename = '<tr><th>base:</th><td><a href="?f=#node|short#;file=#file|urlescape#">#file|escape#@#node|short#</a></td></tr>'
+fileannotateparent = '<tr><td class="metatag">parent:</td><td><a href="?fa=#node|short#;file=#file|urlescape#">#node|short#</a></td></tr>'
+changesetchild = '<tr><th class="child">child #rev#:</th><td class="child"><a href="?cs=#node|short#">#node|short#</a></td></tr>'
+changelogchild = '<tr><th class="child">child #rev#:</th><td class="child"><a href="?cs=#node|short#">#node|short#</a></td></tr>'
+filerevchild = '<tr><td class="metatag">child:</td><td><a href="?f=#node|short#;file=#file|urlescape#">#node|short#</a></td></tr>'
+fileannotatechild = '<tr><td class="metatag">child:</td><td><a href="?fa=#node|short#;file=#file|urlescape#">#node|short#</a></td></tr>'
+tags = tags.tmpl
+tagentry = '<li class="tagEntry parity#parity#"><tt class="node">#node#</tt> <a href="?cs=#node|short#">#tag|escape#</a></li>'
+diffblock = '<pre class="parity#parity#">#lines#</pre>'
+changelogtag = '<tr><th class="tag">tag:</th><td class="tag">#tag|escape#</td></tr>'
+changesettag = '<tr><th class="tag">tag:</th><td class="tag">#tag|escape#</td></tr>'
+filediffparent = '<tr><th class="parent">parent #rev#:</th><td class="parent"><a href="?cs=#node|short#">#node|short#</a></td></tr>'
+filelogparent = '<tr><th>parent #rev#:</th><td><a href="?f=#node|short#;file=#file|urlescape#">#node|short#</a></td></tr>'
+filediffchild = '<tr><th class="child">child #rev#:</th><td class="child"><a href="?cs=#node|short#">#node|short#</a></td></tr>'
+filelogchild = '<tr><th>child #rev#:</th><td><a href="?f=#node|short#;file=#file|urlescape#">#node|short#</a></td></tr>'
+indexentry = '<tr class="parity#parity#"><td><a href="#url#">#name|escape#</a></td><td>#description#</td><td>#contact|obfuscate#</td><td class="age">#lastchange|age# ago</td><td class="indexlinks"><a href="#url#?cl=tip;style=rss">RSS</a> #archives%archiveentry#</td></tr>'
+index = index.tmpl
+archiveentry = '<a href="#url#?ca=#node|short#;type=#type|urlescape#">#type|escape#</a> '
+notfound = notfound.tmpl
+error = error.tmpl
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/templates/old/changelog.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -0,0 +1,38 @@
+#header#
+<title>#repo|escape#: changelog</title>
+<link rel="alternate" type="application/rss+xml"
+ href="?cmd=changelog;style=rss" title="RSS feed for #repo|escape#">
+</head>
+<body>
+
+<div class="buttons">
+<a href="?sl=#rev#">shortlog</a>
+<a href="?cmd=tags">tags</a>
+<a href="?mf=#node|short#;path=/">manifest</a>
+#archives%archiveentry#
+<a type="application/rss+xml" href="?style=rss">rss</a>
+</div>
+
+<h2>changelog for #repo|escape#</h2>
+
+<form action="#">
+<p>
+<label for="search1">search:</label>
+<input type="hidden" name="cmd" value="changelog">
+<input name="rev" id="search1" type="text" size="30">
+navigate: <small class="navigate">#changenav%naventry#</small>
+</p>
+</form>
+
+#entries%changelogentry#
+
+<form action="#">
+<p>
+<label for="search2">search:</label>
+<input type="hidden" name="cmd" value="changelog">
+<input name="rev" id="search2" type="text" size="30">
+navigate: <small class="navigate">#changenav%naventry#</small>
+</p>
+</form>
+
+#footer#
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/templates/old/changelogentry.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -0,0 +1,25 @@
+<table class="logEntry parity#parity#">
+ <tr>
+ <th class="age">#date|age# ago:</th>
+ <th class="firstline">#desc|strip|firstline|escape#</th>
+ </tr>
+ <tr>
+ <th class="revision">changeset #rev#:</th>
+ <td class="node"><a href="?cs=#node|short#">#node|short#</a></td>
+ </tr>
+ #parent%changelogparent#
+ #child%changelogchild#
+ #changelogtag#
+ <tr>
+ <th class="author">author:</th>
+ <td class="author">#author|obfuscate#</td>
+ </tr>
+ <tr>
+ <th class="date">date:</th>
+ <td class="date">#date|date#</td>
+ </tr>
+ <tr>
+ <th class="files"><a href="?mf=#node|short#;path=/">files</a>:</th>
+ <td class="files">#files#</td>
+ </tr>
+</table>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/templates/old/changeset.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -0,0 +1,47 @@
+#header#
+<title>#repo|escape#: changeset #node|short#</title>
+</head>
+<body>
+
+<div class="buttons">
+<a href="?cl=#rev#">changelog</a>
+<a href="?sl=#rev#">shortlog</a>
+<a href="?cmd=tags">tags</a>
+<a href="?mf=#node|short#;path=/">manifest</a>
+<a href="?cs=#node|short#;style=raw">raw</a>
+#archives%archiveentry#
+</div>
+
+<h2>changeset: #desc|strip|escape|firstline#</h2>
+
+<table id="changesetEntry">
+<tr>
+ <th class="changeset">changeset #rev#:</th>
+ <td class="changeset"><a href="?cs=#node|short#">#node|short#</a></td>
+</tr>
+#parent%changesetparent#
+#child%changesetchild#
+#changesettag#
+<tr>
+ <th class="author">author:</th>
+ <td class="author">#author|obfuscate#</td>
+</tr>
+<tr>
+ <th class="date">date:</th>
+ <td class="date">#date|date# (#date|age# ago)</td></tr>
+<tr>
+ <th class="files">files:</th>
+ <td class="files">#files#</td></tr>
+<tr>
+ <th class="description">description:</th>
+ <td class="description">#desc|strip|escape|addbreaks#</td>
+</tr>
+</table>
+
+<div id="changesetDiff">
+#diff#
+</div>
+
+#footer#
+
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/templates/old/fileannotate.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -0,0 +1,43 @@
+#header#
+<title>#repo|escape#: #file|escape# annotate</title>
+</head>
+<body>
+
+<div class="buttons">
+<a href="?cl=#rev#">changelog</a>
+<a href="?sl=#rev#">shortlog</a>
+<a href="?tags=">tags</a>
+<a href="?cs=#node|short#">changeset</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>
+
+<table>
+<tr>
+ <td class="metatag">changeset #rev#:</td>
+ <td><a href="?cs=#node|short#">#node|short#</a></td></tr>
+#rename%filerename#
+#parent%fileannotateparent#
+#child%fileannotatechild#
+<tr>
+ <td class="metatag">author:</td>
+ <td>#author|obfuscate#</td></tr>
+<tr>
+ <td class="metatag">date:</td>
+ <td>#date|date# (#date|age# ago)</td></tr>
+<tr>
+ <td class="metatag">permissions:</td>
+ <td>#permissions|permissions#</td></tr>
+</table>
+
+<br/>
+
+<table cellspacing="0" cellpadding="0">
+#annotate%annotateline#
+</table>
+
+#footer#
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/templates/old/filediff.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -0,0 +1,34 @@
+#header#
+<title>#repo|escape#: #file|escape# diff</title>
+</head>
+<body>
+
+<div class="buttons">
+<a href="?cl=#rev#">changelog</a>
+<a href="?sl=#rev#">shortlog</a>
+<a href="?tags=">tags</a>
+<a href="?cs=#node|short#">changeset</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>
+
+<h2>#file|escape#</h2>
+
+<table id="filediffEntry">
+<tr>
+ <th class="revision">revision #rev#:</th>
+ <td class="revision"><a href="?cs=#node|short#">#node|short#</a></td>
+</tr>
+#parent%filediffparent#
+#child%filediffchild#
+</table>
+
+<div id="fileDiff">
+#diff#
+</div>
+
+#footer#
+
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/templates/old/filelog.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -0,0 +1,22 @@
+#header#
+<title>#repo|escape#: #file|escape# history</title>
+<link rel="alternate" type="application/rss+xml"
+ href="?fl=0;file=#file|urlescape#;style=rss" title="RSS feed for #repo|escape#:#file#">
+</head>
+</head>
+<body>
+
+<div class="buttons">
+<a href="?cl=tip">changelog</a>
+<a href="?sl=tip">shortlog</a>
+<a href="?tags=">tags</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>
+
+<h2>#file|escape# revision history</h2>
+
+#entries%filelogentry#
+
+#footer#
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/templates/old/filelogentry.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -0,0 +1,25 @@
+<table class="logEntry parity#parity#">
+ <tr>
+ <th class="age">#date|age# ago:</th>
+ <th class="firstline"><a href="?cs=#node|short#">#desc|strip|firstline|escape#</a></th>
+ </tr>
+ <tr>
+ <th class="revision">revision #filerev#:</td>
+ <td class="node">
+ <a href="?f=#node|short#;file=#file|urlescape#">#node|short#</a>
+ <a href="?fd=#node|short#;file=#file|urlescape#">(diff)</a>
+ <a href="?fa=#node|short#;file=#file|urlescape#">(annotate)</a>
+ </td>
+ </tr>
+ #rename%filelogrename#
+ <tr>
+ <th class="author">author:</th>
+ <td class="author">#author|obfuscate#</td>
+ </tr>
+ <tr>
+ <th class="date">date:</th>
+ <td class="date">#date|date#</td>
+ </tr>
+</table>
+
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/templates/old/filerevision.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -0,0 +1,41 @@
+#header#
+<title>#repo|escape#:#file|escape#</title>
+</head>
+<body>
+
+<div class="buttons">
+<a href="?cl=#rev#">changelog</a>
+<a href="?sl=#rev#">shortlog</a>
+<a href="?tags=">tags</a>
+<a href="?cs=#node|short#">changeset</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>
+
+<table>
+<tr>
+ <td class="metatag">changeset #rev#:</td>
+ <td><a href="?cs=#node|short#">#node|short#</a></td></tr>
+#rename%filerename#
+#parent%filerevparent#
+#child%filerevchild#
+<tr>
+ <td class="metatag">author:</td>
+ <td>#author|obfuscate#</td></tr>
+<tr>
+ <td class="metatag">date:</td>
+ <td>#date|date# (#date|age# ago)</td></tr>
+<tr>
+ <td class="metatag">permissions:</td>
+ <td>#permissions|permissions#</td></tr>
+</table>
+
+<pre>
+#text%fileline#
+</pre>
+
+#footer#
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/templates/old/header.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -0,0 +1,8 @@
+Content-type: text/html
+
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<link rel="icon" href="?static=hgicon.png" type="image/png">
+<meta name="robots" content="index, nofollow" />
+<link rel="stylesheet" href="?static=style.css" type="text/css" />
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/templates/old/manifest.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -0,0 +1,23 @@
+#header#
+<title>#repo|escape#: manifest for changeset #node|short#</title>
+</head>
+<body>
+
+<div class="buttons">
+<a href="?cl=#rev#">changelog</a>
+<a href="?sl=#rev#">shortlog</a>
+<a href="?tags=">tags</a>
+<a href="?cs=#node|short#">changeset</a>
+#archives%archiveentry#
+</div>
+
+<h2>manifest for changeset #node|short#: #path|escape#</h2>
+
+<table cellpadding="0" cellspacing="0">
+<tr class="parity1">
+ <td><tt>drwxr-xr-x</tt>
+ <td><a href="?mf=#node|short#;path=#up|urlescape#">[up]</a>
+#dentries%manifestdirentry#
+#fentries%manifestfileentry#
+</table>
+#footer#
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/templates/old/search.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -0,0 +1,33 @@
+#header#
+<title>#repo|escape#: searching for #query|escape#</title>
+</head>
+<body>
+
+<div class="buttons">
+<a href="?cl=tip">changelog</a>
+<a href="?sl=tip">shortlog</a>
+<a href="?tags=">tags</a>
+<a href="?mf=#node|short#;path=/">manifest</a>
+</div>
+
+<h2>searching for #query|escape#</h2>
+
+<form>
+<p>
+search:
+<input type="hidden" name="cmd" value="changelog">
+<input name="rev" type="text" width="30" value="#query|escape#">
+</p>
+</form>
+
+#entries#
+
+<form>
+<p>
+search:
+<input type="hidden" name="cmd" value="changelog">
+<input name="rev" type="text" width="30" value="#query|escape#">
+</p>
+</form>
+
+#footer#
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/templates/old/shortlog.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -0,0 +1,38 @@
+#header#
+<title>#repo|escape#: shortlog</title>
+<link rel="alternate" type="application/rss+xml"
+ href="?cmd=changelog;style=rss" title="RSS feed for #repo|escape#">
+</head>
+<body>
+
+<div class="buttons">
+<a href="?cl=#rev#">changelog</a>
+<a href="?cmd=tags">tags</a>
+<a href="?mf=#node|short#;path=/">manifest</a>
+#archives%archiveentry#
+<a type="application/rss+xml" href="?style=rss">rss</a>
+</div>
+
+<h2>shortlog for #repo|escape#</h2>
+
+<form action="#">
+<p>
+<label for="search1">search:</label>
+<input type="hidden" name="cmd" value="changelog">
+<input name="rev" id="search1" type="text" size="30">
+navigate: <small class="navigate">#changenav%navshortentry#</small>
+</p>
+</form>
+
+#entries%shortlogentry#
+
+<form action="#">
+<p>
+<label for="search2">search:</label>
+<input type="hidden" name="cmd" value="changelog">
+<input name="rev" id="search2" type="text" size="30">
+navigate: <small class="navigate">#changenav%navshortentry#</small>
+</p>
+</form>
+
+#footer#
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/templates/old/shortlogentry.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -0,0 +1,7 @@
+<table class="slogEntry parity#parity#">
+ <tr>
+ <td class="age">#date|age#</td>
+ <td class="author">#author|obfuscate#</td>
+ <td class="node"><a href="?cs=#node|short#">#desc|strip|firstline|escape#</a></td>
+ </tr>
+</table>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/templates/old/tags.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -0,0 +1,21 @@
+#header#
+<title>#repo|escape#: tags</title>
+<link rel="alternate" type="application/rss+xml"
+ href="?cmd=tags;style=rss" title="RSS feed for #repo|escape#: tags">
+</head>
+<body>
+
+<div class="buttons">
+<a href="?cl=tip">changelog</a>
+<a href="?sl=tip">shortlog</a>
+<a href="?mf=#node|short#;path=/">manifest</a>
+<a type="application/rss+xml" href="?cmd=tags;style=rss">rss</a>
+</div>
+
+<h2>tags:</h2>
+
+<ul id="tagEntries">
+#entries%tagentry#
+</ul>
+
+#footer#
--- a/templates/search.tmpl Thu Oct 05 10:07:40 2006 +0200
+++ b/templates/search.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -4,10 +4,10 @@
<body>
<div class="buttons">
-<a href="?cl=tip">changelog</a>
-<a href="?sl=tip">shortlog</a>
-<a href="?tags=">tags</a>
-<a href="?mf=#node|short#;path=/">manifest</a>
+<a href="#url#log">changelog</a>
+<a href="#url#shortlog">shortlog</a>
+<a href="#url#tags">tags</a>
+<a href="#url#file/#node|short#">manifest</a>
</div>
<h2>searching for #query|escape#</h2>
@@ -15,7 +15,6 @@
<form>
<p>
search:
-<input type="hidden" name="cmd" value="changelog">
<input name="rev" type="text" width="30" value="#query|escape#">
</p>
</form>
@@ -25,7 +24,6 @@
<form>
<p>
search:
-<input type="hidden" name="cmd" value="changelog">
<input name="rev" type="text" width="30" value="#query|escape#">
</p>
</form>
--- a/templates/shortlog.tmpl Thu Oct 05 10:07:40 2006 +0200
+++ b/templates/shortlog.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -1,24 +1,23 @@
#header#
<title>#repo|escape#: shortlog</title>
<link rel="alternate" type="application/rss+xml"
- href="?cmd=changelog;style=rss" title="RSS feed for #repo|escape#">
+ href="#url#rss-log" title="RSS feed for #repo|escape#">
</head>
<body>
<div class="buttons">
-<a href="?cl=#rev#">changelog</a>
-<a href="?cmd=tags">tags</a>
-<a href="?mf=#node|short#;path=/">manifest</a>
+<a href="#url#log/#rev#">changelog</a>
+<a href="#url#tags">tags</a>
+<a href="#url#file/#node|short#/">manifest</a>
#archives%archiveentry#
-<a type="application/rss+xml" href="?style=rss">rss</a>
+<a type="application/rss+xml" href="#url#rss-log">rss</a>
</div>
<h2>shortlog for #repo|escape#</h2>
-<form action="#">
+<form action="#url#log">
<p>
<label for="search1">search:</label>
-<input type="hidden" name="cmd" value="changelog">
<input name="rev" id="search1" type="text" size="30">
navigate: <small class="navigate">#changenav%navshortentry#</small>
</p>
@@ -26,10 +25,9 @@
#entries%shortlogentry#
-<form action="#">
+<form action="#url#log">
<p>
<label for="search2">search:</label>
-<input type="hidden" name="cmd" value="changelog">
<input name="rev" id="search2" type="text" size="30">
navigate: <small class="navigate">#changenav%navshortentry#</small>
</p>
--- a/templates/shortlogentry.tmpl Thu Oct 05 10:07:40 2006 +0200
+++ b/templates/shortlogentry.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -2,6 +2,6 @@
<tr>
<td class="age">#date|age#</td>
<td class="author">#author|obfuscate#</td>
- <td class="node"><a href="?cs=#node|short#">#desc|strip|firstline|escape#</a></td>
+ <td class="node"><a href="#url#rev/#node|short#">#desc|strip|firstline|escape#</a></td>
</tr>
</table>
--- a/templates/tags.tmpl Thu Oct 05 10:07:40 2006 +0200
+++ b/templates/tags.tmpl Thu Oct 05 10:15:22 2006 +0200
@@ -1,15 +1,15 @@
#header#
<title>#repo|escape#: tags</title>
<link rel="alternate" type="application/rss+xml"
- href="?cmd=tags;style=rss" title="RSS feed for #repo|escape#: tags">
+ href="#url#rss-tags" title="RSS feed for #repo|escape#: tags">
</head>
<body>
<div class="buttons">
-<a href="?cl=tip">changelog</a>
-<a href="?sl=tip">shortlog</a>
-<a href="?mf=#node|short#;path=/">manifest</a>
-<a type="application/rss+xml" href="?cmd=tags;style=rss">rss</a>
+<a href="#url#log">changelog</a>
+<a href="#url#shortlog">shortlog</a>
+<a href="#url#file/#node|short#/">manifest</a>
+<a type="application/rss+xml" href="#url#rss-tags">rss</a>
</div>
<h2>tags:</h2>