##// END OF EJS Templates
graphlog: don't truncate template value at last \n...
graphlog: don't truncate template value at last \n Most uses of templates requires a trailing newline to get vertical output. Graphlog with a template without trailing newline did however not just create horisontal output like other commands would but truncated the output at the last \n. Template values without any \n were ignored completely. Graphlog will now only eat one trailing newline before it lets the flow of the graph add the necessary vertical space.

File last commit:

r16137:8fd18eb8 default
r17120:01d847e0 default
Show More
graph.tmpl
115 lines | 4.3 KiB | application/x-cheetah | CheetahLexer
{header}
<title>{repo|escape}: graph</title>
<link rel="alternate" type="application/atom+xml" href="{url}atom-log" title="Atom feed for {repo|escape}"/>
<link rel="alternate" type="application/rss+xml" href="{url}rss-log" title="RSS feed for {repo|escape}"/>
<!--[if IE]><script type="text/javascript" src="{staticurl}excanvas.js"></script><![endif]-->
</head>
<body>
<div id="container">
<div class="page-header">
<h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / graph</h1>
<form action="{url}log">
{sessionvars%hiddenformentry}
<dl class="search">
<dt><label>Search: </label></dt>
<dd><input type="text" name="rev" /></dd>
</dl>
</form>
<ul class="page-nav">
<li><a href="{url}summary{sessionvars%urlparameter}">summary</a></li>
<li><a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a></li>
<li><a href="{url}changelog{sessionvars%urlparameter}">changelog</a></li>
<li class="current">graph</li>
<li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
<li><a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
<li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
<li><a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a></li>
<li><a href="{url}help{sessionvars%urlparameter}">help</a></li>
</ul>
</div>
<h2 class="no-link no-border">graph</h2>
<div id="noscript">The revision graph only works with JavaScript-enabled browsers.</div>
<div id="wrapper">
<ul id="nodebgs"></ul>
<canvas id="graph" width="480" height="{canvasheight}"></canvas>
<ul id="graphnodes"></ul>
</div>
<script>
<!-- hide script content
document.getElementById('noscript').style.display = 'none';
var data = {jsdata|json};
var graph = new Graph();
graph.scale({bg_height});
var revlink = '<li style="_STYLE"><span class="desc">';
revlink += '<a href="{url}rev/_NODEID{sessionvars%urlparameter}" title="_NODEID">_DESC</a>';
revlink += '</span>_TAGS<span class="info">_DATE, by _USER</span></li>';
graph.vertex = function(x, y, color, parity, cur) \{
this.ctx.beginPath();
color = this.setColor(color, 0.25, 0.75);
this.ctx.arc(x, y, radius, 0, Math.PI * 2, true);
this.ctx.fill();
var bg = '<li class="bg parity' + parity + '"></li>';
var left = (this.columns + 1) * this.bg_height;
var nstyle = 'padding-left: ' + left + 'px;';
var item = revlink.replace(/_STYLE/, nstyle);
item = item.replace(/_PARITY/, 'parity' + parity);
item = item.replace(/_NODEID/, cur[0]);
item = item.replace(/_NODEID/, cur[0]);
item = item.replace(/_DESC/, cur[3]);
item = item.replace(/_USER/, cur[4]);
item = item.replace(/_DATE/, cur[5]);
var tagspan = '';
if (cur[7].length || cur[8].length || (cur[6][0] != 'default' || cur[6][1])) \{
tagspan = '<span class="logtags">';
if (cur[6][1]) \{
tagspan += '<span class="branchtag" title="' + cur[6][0] + '">';
tagspan += cur[6][0] + '</span> ';
} else if (!cur[6][1] && cur[6][0] != 'default') \{
tagspan += '<span class="inbranchtag" title="' + cur[6][0] + '">';
tagspan += cur[6][0] + '</span> ';
}
if (cur[7].length) \{
for (var t in cur[7]) \{
var tag = cur[7][t];
tagspan += '<span class="tagtag">' + tag + '</span> ';
}
}
if (cur[8].length) \{
for (var t in cur[8]) \{
var bookmark = cur[8][t];
tagspan += '<span class="bookmarktag">' + bookmark + '</span> ';
}
}
tagspan += '</span>';
}
item = item.replace(/_TAGS/, tagspan);
return [bg, item];
}
graph.render(data);
// stop hiding script -->
</script>
<div class="page-path">
<a href="{url}graph/{rev}{lessvars%urlparameter}">less</a>
<a href="{url}graph/{rev}{morevars%urlparameter}">more</a>
| {changenav%navgraph}
</div>
{footer}