MercurialWebTheme

Changeset

25:a19ba5e3e9f0
2010-10-25 Paul Boddie raw files shortlog changelog graph Converted the templates to XHTML, fixing   entities and fixing well-formedness issues. Added some support for SVG-based graphs, requiring additional data from the graph "command" in hgweb.
themes/mercurialweb/branches.tmpl (file) themes/mercurialweb/changelog.tmpl (file) themes/mercurialweb/changeset.tmpl (file) themes/mercurialweb/error.tmpl (file) themes/mercurialweb/fileannotate.tmpl (file) themes/mercurialweb/filediff.tmpl (file) themes/mercurialweb/filerevision.tmpl (file) themes/mercurialweb/graph.tmpl (file) themes/mercurialweb/graphedge.tmpl (file) themes/mercurialweb/graphlabel.tmpl (file) themes/mercurialweb/graphnode.tmpl (file) themes/mercurialweb/header.tmpl (file) themes/mercurialweb/index.tmpl (file) themes/mercurialweb/manifest.tmpl (file) themes/mercurialweb/map (file) themes/mercurialweb/search.tmpl (file) themes/mercurialweb/shortlog.tmpl (file) themes/mercurialweb/static/style-mercurialweb.css (file) themes/mercurialweb/summary.tmpl (file) themes/mercurialweb/tags.tmpl (file)
     1.1 --- a/themes/mercurialweb/branches.tmpl	Fri Jul 16 01:21:02 2010 +0200
     1.2 +++ b/themes/mercurialweb/branches.tmpl	Mon Oct 25 01:20:36 2010 +0200
     1.3 @@ -15,7 +15,7 @@
     1.4      ><li class="current"><span>Branches</span></li
     1.5      ><li><a href="{url}file{sessionvars%urlparameter}">Files</a></li
     1.6      ><li><form id="searchform" action="{url}log"><span class="container">
     1.7 -        <span class="hint">Search</span>&nbsp;<input name="rev" id="searchinput" type="text" size="20" />
     1.8 +        <span class="hint">Search</span>&#160;<input name="rev" id="searchinput" type="text" size="20" />
     1.9        </span>
    1.10        {sessionvars%hiddenformentry}
    1.11        </form>
     2.1 --- a/themes/mercurialweb/changelog.tmpl	Fri Jul 16 01:21:02 2010 +0200
     2.2 +++ b/themes/mercurialweb/changelog.tmpl	Mon Oct 25 01:20:36 2010 +0200
     2.3 @@ -14,7 +14,7 @@
     2.4      ><li><a href="{url}tags{sessionvars%urlparameter}">Tags</a></li
     2.5      ><li><a href="{url}file{sessionvars%urlparameter}">Files</a></li
     2.6      ><li><form id="searchform" action="{url}log"><span class="container">
     2.7 -        <span class="hint">Search</span>&nbsp;<input name="rev" id="searchinput" type="text" size="20" />
     2.8 +        <span class="hint">Search</span>&#160;<input name="rev" id="searchinput" type="text" size="20" />
     2.9        </span>
    2.10        {sessionvars%hiddenformentry}
    2.11        </form>
     3.1 --- a/themes/mercurialweb/changeset.tmpl	Fri Jul 16 01:21:02 2010 +0200
     3.2 +++ b/themes/mercurialweb/changeset.tmpl	Mon Oct 25 01:20:36 2010 +0200
     3.3 @@ -14,7 +14,7 @@
     3.4      ><li><a href="{url}tags{sessionvars%urlparameter}">Tags</a></li
     3.5      ><li><a href="{url}file{sessionvars%urlparameter}">Files</a></li
     3.6      ><li><form id="searchform" action="{url}log"><span class="container">
     3.7 -        <span class="hint">Search</span>&nbsp;<input name="rev" id="searchinput" type="text" size="20" />
     3.8 +        <span class="hint">Search</span>&#160;<input name="rev" id="searchinput" type="text" size="20" />
     3.9        </span>
    3.10        {sessionvars%hiddenformentry}
    3.11        </form>
     4.1 --- a/themes/mercurialweb/error.tmpl	Fri Jul 16 01:21:02 2010 +0200
     4.2 +++ b/themes/mercurialweb/error.tmpl	Mon Oct 25 01:20:36 2010 +0200
     4.3 @@ -14,7 +14,7 @@
     4.4      ><li><a href="{url}tags{sessionvars%urlparameter}">Tags</a></li
     4.5      ><li><a href="{url}file{sessionvars%urlparameter}">Files</a></li
     4.6      ><li><form id="searchform" action="{url}log"><span class="container">
     4.7 -        <span class="hint">Search</span>&nbsp;<input name="rev" id="searchinput" type="text" size="20" />
     4.8 +        <span class="hint">Search</span>&#160;<input name="rev" id="searchinput" type="text" size="20" />
     4.9        </span>
    4.10        {sessionvars%hiddenformentry}
    4.11        </form>
     5.1 --- a/themes/mercurialweb/fileannotate.tmpl	Fri Jul 16 01:21:02 2010 +0200
     5.2 +++ b/themes/mercurialweb/fileannotate.tmpl	Mon Oct 25 01:20:36 2010 +0200
     5.3 @@ -14,7 +14,7 @@
     5.4      ><li><a href="{url}tags{sessionvars%urlparameter}">Tags</a></li
     5.5      ><li><a href="{url}file{sessionvars%urlparameter}">Files</a></li
     5.6      ><li><form id="searchform" action="{url}log"><span class="container">
     5.7 -        <span class="hint">Search</span>&nbsp;<input name="rev" id="searchinput" type="text" size="20" />
     5.8 +        <span class="hint">Search</span>&#160;<input name="rev" id="searchinput" type="text" size="20" />
     5.9        </span>
    5.10        {sessionvars%hiddenformentry}
    5.11        </form>
     6.1 --- a/themes/mercurialweb/filediff.tmpl	Fri Jul 16 01:21:02 2010 +0200
     6.2 +++ b/themes/mercurialweb/filediff.tmpl	Mon Oct 25 01:20:36 2010 +0200
     6.3 @@ -14,7 +14,7 @@
     6.4      ><li><a href="{url}tags{sessionvars%urlparameter}">Tags</a></li
     6.5      ><li><a href="{url}file{sessionvars%urlparameter}">Files</a></li
     6.6      ><li><form id="searchform" action="{url}log"><span class="container">
     6.7 -        <span class="hint">Search</span>&nbsp;<input name="rev" id="searchinput" type="text" size="20" />
     6.8 +        <span class="hint">Search</span>&#160;<input name="rev" id="searchinput" type="text" size="20" />
     6.9        </span>
    6.10        {sessionvars%hiddenformentry}
    6.11        </form>
     7.1 --- a/themes/mercurialweb/filerevision.tmpl	Fri Jul 16 01:21:02 2010 +0200
     7.2 +++ b/themes/mercurialweb/filerevision.tmpl	Mon Oct 25 01:20:36 2010 +0200
     7.3 @@ -14,7 +14,7 @@
     7.4      ><li><a href="{url}tags{sessionvars%urlparameter}">Tags</a></li
     7.5      ><li><a href="{url}file{sessionvars%urlparameter}">Files</a></li
     7.6      ><li><form id="searchform" action="{url}log"><span class="container">
     7.7 -        <span class="hint">Search</span>&nbsp;<input name="rev" id="searchinput" type="text" size="20" />
     7.8 +        <span class="hint">Search</span>&#160;<input name="rev" id="searchinput" type="text" size="20" />
     7.9        </span>
    7.10        {sessionvars%hiddenformentry}
    7.11        </form>
     8.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     8.2 +++ b/themes/mercurialweb/graph.tmpl	Mon Oct 25 01:20:36 2010 +0200
     8.3 @@ -0,0 +1,48 @@
     8.4 +{header}
     8.5 +<title>{repo|escape} (graph)</title>
     8.6 +</head>
     8.7 +
     8.8 +<body>
     8.9 +
    8.10 +<div id="header">
    8.11 +  <div id="logo"><a href="{url}..{sessionvars%urlparameter}"><img src="{staticurl}mercurial-logo.png" alt="Mercurial logo" /></a></div>
    8.12 +  <div class="controls">
    8.13 +    <ul id="navibar">
    8.14 +    <li><a href="{url}summary{sessionvars%urlparameter}">Summary</a></li
    8.15 +    ><li><a href="{url}shortlog{sessionvars%urlparameter}">Shortlog</a></li
    8.16 +    ><li><a href="{url}changelog{sessionvars%urlparameter}">Changelog</a></li
    8.17 +    ><li class="current"><span>Graph</span></li
    8.18 +    ><li><a href="{url}tags{sessionvars%urlparameter}">Tags</a></li
    8.19 +    ><li><a href="{url}file{sessionvars%urlparameter}">Files</a></li
    8.20 +    ><li><form id="searchform" action="{url}log"><span class="container">
    8.21 +        <span class="hint">Search</span>&#160;<input name="rev" id="searchinput" type="text" size="20" />
    8.22 +      </span>
    8.23 +      {sessionvars%hiddenformentry}
    8.24 +      </form>
    8.25 +    </li>
    8.26 +    </ul>
    8.27 +  </div>
    8.28 +  <div id="pageline"></div>
    8.29 +</div>
    8.30 +
    8.31 +<h2>{repo|escape}</h2>
    8.32 +
    8.33 +<h3>Graph</h3>
    8.34 +
    8.35 +<div class="pager">{changenav%graphpagerlink}</div>
    8.36 +
    8.37 +<div class="graph">
    8.38 +<ul class="graph" style="width:100%; height:{canvasheight}px; padding-left:{canvaswidth}px;">
    8.39 +{svgdata%graphlabel}
    8.40 +</ul>
    8.41 +<svg xmlns="http://www.w3.org/2000/svg" version="1.1"
    8.42 + style="width:100%; height:{canvasheight}px; position:absolute; top:0; left:0; z-index:-1;">
    8.43 +<g transform="scale({bg_height}) translate(0.5 0.25)">
    8.44 +{svgdata%graphnode}
    8.45 +</g>
    8.46 +</svg>
    8.47 +</div>
    8.48 +
    8.49 +<div class="pager">{changenav%graphpagerlink}</div>
    8.50 +
    8.51 +{footer}
     9.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     9.2 +++ b/themes/mercurialweb/graphedge.tmpl	Mon Oct 25 01:20:36 2010 +0200
     9.3 @@ -0,0 +1,1 @@
     9.4 +<line x1="{col}" x2="{nextcol}" y1="{row}" y2="{nextrow}" class="graphcolour-{color}" />
    10.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    10.2 +++ b/themes/mercurialweb/graphlabel.tmpl	Mon Oct 25 01:20:36 2010 +0200
    10.3 @@ -0,0 +1,1 @@
    10.4 +<li class="graphlabel" style="height:{bg_height}px;"><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{desc|strip|firstline|escape}</a> {user} {age} {branches%branchtag}{inbranch%inbranchtag}{tags%tagtag}</li>
    11.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    11.2 +++ b/themes/mercurialweb/graphnode.tmpl	Mon Oct 25 01:20:36 2010 +0200
    11.3 @@ -0,0 +1,2 @@
    11.4 +<circle cx="{col}" cy="{row}" r="0.25" class="graphcolour-{color}" />
    11.5 +{edges%graphedge}
    12.1 --- a/themes/mercurialweb/header.tmpl	Fri Jul 16 01:21:02 2010 +0200
    12.2 +++ b/themes/mercurialweb/header.tmpl	Mon Oct 25 01:20:36 2010 +0200
    12.3 @@ -1,5 +1,4 @@
    12.4 -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    12.5 -<html>
    12.6 +<html xmlns="http://www.w3.org/1999/xhtml">
    12.7  <head>
    12.8  <link rel="icon" href="{staticurl}hgicon.png" type="image/png" />
    12.9  <meta name="robots" content="index, nofollow" />
    13.1 --- a/themes/mercurialweb/index.tmpl	Fri Jul 16 01:21:02 2010 +0200
    13.2 +++ b/themes/mercurialweb/index.tmpl	Mon Oct 25 01:20:36 2010 +0200
    13.3 @@ -18,7 +18,7 @@
    13.4        <th><a href="?sort={sort_description}">Description</a></th>
    13.5        <th><a href="?sort={sort_contact}">Contact</a></th>
    13.6        <th><a href="?sort={sort_lastchange}">Last change</a></th>
    13.7 -      <th>&nbsp;</td>
    13.8 +      <th>&#160;</th>
    13.9      </tr>
   13.10    </thead>
   13.11    <tbody>
    14.1 --- a/themes/mercurialweb/manifest.tmpl	Fri Jul 16 01:21:02 2010 +0200
    14.2 +++ b/themes/mercurialweb/manifest.tmpl	Mon Oct 25 01:20:36 2010 +0200
    14.3 @@ -14,7 +14,7 @@
    14.4      ><li><a href="{url}tags{sessionvars%urlparameter}">Tags</a></li
    14.5      ><li class="current"><span>Files</span></li
    14.6      ><li><form id="searchform" action="{url}log"><span class="container">
    14.7 -        <span class="hint">Search</span>&nbsp;<input name="rev" id="searchinput" type="text" size="20" />
    14.8 +        <span class="hint">Search</span>&#160;<input name="rev" id="searchinput" type="text" size="20" />
    14.9        </span>
   14.10        {sessionvars%hiddenformentry}
   14.11        </form>
    15.1 --- a/themes/mercurialweb/map	Fri Jul 16 01:21:02 2010 +0200
    15.2 +++ b/themes/mercurialweb/map	Mon Oct 25 01:20:36 2010 +0200
    15.3 @@ -1,5 +1,5 @@
    15.4  default = 'summary'
    15.5 -mimetype = 'text/html; charset={encoding}'
    15.6 +mimetype = 'application/xhtml+xml; charset={encoding}'
    15.7  
    15.8  branches = branches.tmpl
    15.9  changelog = changelog.tmpl
   15.10 @@ -8,6 +8,7 @@
   15.11  fileannotate = fileannotate.tmpl
   15.12  filediff = filediff.tmpl
   15.13  filerevision = filerevision.tmpl
   15.14 +graph = graph.tmpl
   15.15  header = header.tmpl
   15.16  footer = footer.tmpl
   15.17  index = index.tmpl
   15.18 @@ -28,6 +29,10 @@
   15.19  shortlogentry = shortlogentry.tmpl
   15.20  tagentry = tagentry.tmpl
   15.21  
   15.22 +graphedge = graphedge.tmpl
   15.23 +graphlabel = graphlabel.tmpl
   15.24 +graphnode = graphnode.tmpl
   15.25 +
   15.26  archiveentry = '<a href="{url}archive/{node|short}{extension|urlescape}">{type|escape}</a> '
   15.27  branchlabel = '<span class="branch">{name}</span> '
   15.28  branchtag = '<span class="branch"><a href="{url}rev/{node|short}{sessionvars%urlparameter}#{node|short}">{name}</a></span> '
   15.29 @@ -36,6 +41,7 @@
   15.30  changesetlink = '<a href="{url}rev/{node|short}{sessionvars%urlparameter}">{rev}:{node|short}</a> '
   15.31  changesetfiledifflink = '<a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{rev}:{node|short}</a> '
   15.32  filerevlink = '<a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{rev}:{node|short}</a> '
   15.33 +graphpagerlink = '<a href="{url}graph/{node|short}{sessionvars%urlparameter}#{node|short}">{label|escape}</a> '
   15.34  inbranchlabel = '<span class="inbranch">{name}</span> '
   15.35  inbranchtag = '<span class="inbranch"><a href="{url}rev/{node|short}{sessionvars%urlparameter}#{node|short}">{name}</a></span> '
   15.36  shortlogpagerlink = '<a href="{url}shortlog/{node|short}{sessionvars%urlparameter}#{node|short}">{label|escape}</a> '
    16.1 --- a/themes/mercurialweb/search.tmpl	Fri Jul 16 01:21:02 2010 +0200
    16.2 +++ b/themes/mercurialweb/search.tmpl	Mon Oct 25 01:20:36 2010 +0200
    16.3 @@ -14,7 +14,7 @@
    16.4      ><li><a href="{url}tags{sessionvars%urlparameter}">Tags</a></li
    16.5      ><li><a href="{url}file{sessionvars%urlparameter}">Files</a></li
    16.6      ><li><form id="searchform" action="{url}log"><span class="container">
    16.7 -        <span class="hint">Search</span>&nbsp;<input name="rev" id="searchinput" type="text" size="20" />
    16.8 +        <span class="hint">Search</span>&#160;<input name="rev" id="searchinput" type="text" size="20" />
    16.9        </span>
   16.10        {sessionvars%hiddenformentry}
   16.11        </form>
    17.1 --- a/themes/mercurialweb/shortlog.tmpl	Fri Jul 16 01:21:02 2010 +0200
    17.2 +++ b/themes/mercurialweb/shortlog.tmpl	Mon Oct 25 01:20:36 2010 +0200
    17.3 @@ -14,7 +14,7 @@
    17.4      ><li><a href="{url}tags{sessionvars%urlparameter}">Tags</a></li
    17.5      ><li><a href="{url}file{sessionvars%urlparameter}">Files</a></li
    17.6      ><li><form id="searchform" action="{url}log"><span class="container">
    17.7 -        <span class="hint">Search</span>&nbsp;<input name="rev" id="searchinput" type="text" size="20" />
    17.8 +        <span class="hint">Search</span>&#160;<input name="rev" id="searchinput" type="text" size="20" />
    17.9        </span>
   17.10        {sessionvars%hiddenformentry}
   17.11        </form>
    18.1 --- a/themes/mercurialweb/static/style-mercurialweb.css	Fri Jul 16 01:21:02 2010 +0200
    18.2 +++ b/themes/mercurialweb/static/style-mercurialweb.css	Mon Oct 25 01:20:36 2010 +0200
    18.3 @@ -420,3 +420,32 @@
    18.4  
    18.5      font-size: 120%;
    18.6  }
    18.7 +
    18.8 +/* Graph views. */
    18.9 +
   18.10 +div.graph {
   18.11 +    position: relative;
   18.12 +}
   18.13 +
   18.14 +ul.graph {
   18.15 +    list-style: none;
   18.16 +    padding: 0;
   18.17 +}
   18.18 +
   18.19 +.graphlabel {
   18.20 +    white-space: nowrap;
   18.21 +}
   18.22 +
   18.23 +.graphcolour-1 { fill: #d00; }
   18.24 +.graphcolour-2 { fill: #dd0; }
   18.25 +.graphcolour-3 { fill: #0d0; }
   18.26 +.graphcolour-4 { fill: #0dd; }
   18.27 +.graphcolour-5 { fill: #00d; }
   18.28 +.graphcolour-6 { fill: #d0d; }
   18.29 +
   18.30 +line.graphcolour-1 { stroke: #d00; stroke-width: 0.1; }
   18.31 +line.graphcolour-2 { stroke: #dd0; stroke-width: 0.1; }
   18.32 +line.graphcolour-3 { stroke: #0d0; stroke-width: 0.1; }
   18.33 +line.graphcolour-4 { stroke: #0dd; stroke-width: 0.1; }
   18.34 +line.graphcolour-5 { stroke: #00d; stroke-width: 0.1; }
   18.35 +line.graphcolour-6 { stroke: #d0d; stroke-width: 0.1; }
    19.1 --- a/themes/mercurialweb/summary.tmpl	Fri Jul 16 01:21:02 2010 +0200
    19.2 +++ b/themes/mercurialweb/summary.tmpl	Mon Oct 25 01:20:36 2010 +0200
    19.3 @@ -14,7 +14,7 @@
    19.4      ><li><a href="{url}tags{sessionvars%urlparameter}">Tags</a></li
    19.5      ><li><a href="{url}file{sessionvars%urlparameter}">Files</a></li
    19.6      ><li><form id="searchform" action="{url}log"><span class="container">
    19.7 -        <span class="hint">Search</span>&nbsp;<input name="rev" id="searchinput" type="text" size="20" />
    19.8 +        <span class="hint">Search</span>&#160;<input name="rev" id="searchinput" type="text" size="20" />
    19.9        </span>
   19.10        {sessionvars%hiddenformentry}
   19.11        </form>
    20.1 --- a/themes/mercurialweb/tags.tmpl	Fri Jul 16 01:21:02 2010 +0200
    20.2 +++ b/themes/mercurialweb/tags.tmpl	Mon Oct 25 01:20:36 2010 +0200
    20.3 @@ -14,7 +14,7 @@
    20.4      ><li class="current"><span>Tags</span></li
    20.5      ><li><a href="{url}file{sessionvars%urlparameter}">Files</a></li
    20.6      ><li><form id="searchform" action="{url}log"><span class="container">
    20.7 -        <span class="hint">Search</span>&nbsp;<input name="rev" id="searchinput" type="text" size="20" />
    20.8 +        <span class="hint">Search</span>&#160;<input name="rev" id="searchinput" type="text" size="20" />
    20.9        </span>
   20.10        {sessionvars%hiddenformentry}
   20.11        </form>