merge: rework manifestmerge to use a matcher
This opens the door to working slightly more closely with the manifest
type and letting it optimize out some of the diff comparisons for us,
and also makes life significantly easier for narrowhg.
{header}
<title>{repo|escape}: shortlog</title>
<link rel="alternate" type="application/atom+xml"
href="{url|urlescape}atom-log" title="Atom feed for {repo|escape}">
<link rel="alternate" type="application/rss+xml"
href="{url|urlescape}rss-log" title="RSS feed for {repo|escape}">
</head>
<body>
<div class="buttons">
<a href="{url|urlescape}log/{symrev}{sessionvars%urlparameter}">changelog</a>
<a href="{url|urlescape}graph/{symrev}{sessionvars%urlparameter}">graph</a>
<a href="{url|urlescape}tags{sessionvars%urlparameter}">tags</a>
<a href="{url|urlescape}branches{sessionvars%urlparameter}">branches</a>
<a href="{url|urlescape}file/{symrev}/{sessionvars%urlparameter}">files</a>
{archives%archiveentry}
<a href="{url|urlescape}help{sessionvars%urlparameter}">help</a>
<a type="application/rss+xml" href="{url|urlescape}rss-log">rss</a>
<a type="application/rss+xml" href="{url|urlescape}atom-log" title="Atom feed for {repo|escape}">atom</a>
</div>
<h2><a href="/">Mercurial</a> {pathdef%breadcrumb} / shortlog</h2>
<form action="{url|urlescape}log">
{sessionvars%hiddenformentry}
<p>
<label for="search1">search:</label>
<input name="rev" id="search1" type="text" size="30">
navigate: <small class="navigate">{changenav%navshort}</small>
</p>
</form>
{entries%shortlogentry}
<form action="{url|urlescape}log">
{sessionvars%hiddenformentry}
<p>
<label for="search2">search:</label>
<input name="rev" id="search2" type="text" size="30">
navigate: <small class="navigate">{changenav%navshort}</small>
</p>
</form>
{footer}