##// END OF EJS Templates
log: add a "graphwidth" template variable...
log: add a "graphwidth" template variable Wrapping text in templates for 'hg log --graph' can't be done very well, because the template doesn't know how wide the graph drawing is. The edge drawing function needs to know the number of lines in the template output, so we need to also determine how wide that drawing would be before we call the edgefn or evaluate the template. This patch makes edgefn compute the graph width and pass it into the template so that we can do something like this: COLUMNS=10 hg log --graph --template "{fill(desc, termwidth - graphwidth)}" @ a a a a | a a a a | a a a a o a a a |\ a a a | | a a a | | a a a Using extensions to do this would be relatively complicated due to a lack of hooks in this area of the code. In the future it may make sense to have a more generic "textwidth" that tells you how many columns you can expect to fill without causing the terminal to wrap your output. I'm not sure there are other situations to motivate this yet, or if it is entirely feasible. Differential Revision: https://phab.mercurial-scm.org/D360

File last commit:

r32758:cba4461a default
r33860:6f6c8788 default
Show More
filecomparison.tmpl
90 lines | 2.7 KiB | application/x-cheetah | CheetahLexer
wujek srujek
hgweb: side-by-side comparison functionality...
r17202 {header}
<title>{repo|escape}: {file|escape} comparison</title>
</head>
<body>
<div class="container">
<div class="menu">
<div class="logo">
<a href="{logourl}">
Thomas Arendsen Hein
hgweb: urlescape all urls, HTML escape repo/tag/branch/... names...
r18526 <img src="{staticurl|urlescape}{logoimg}" alt="mercurial" /></a>
wujek srujek
hgweb: side-by-side comparison functionality...
r17202 </div>
<ul>
av6
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)...
r25606 <li><a href="{url|urlescape}shortlog/{symrev}{sessionvars%urlparameter}">log</a></li>
<li><a href="{url|urlescape}graph/{symrev}{sessionvars%urlparameter}">graph</a></li>
Thomas Arendsen Hein
hgweb: urlescape all urls, HTML escape repo/tag/branch/... names...
r18526 <li><a href="{url|urlescape}tags{sessionvars%urlparameter}">tags</a></li>
<li><a href="{url|urlescape}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
<li><a href="{url|urlescape}branches{sessionvars%urlparameter}">branches</a></li>
wujek srujek
hgweb: side-by-side comparison functionality...
r17202 </ul>
<ul>
av6
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)...
r25606 <li><a href="{url|urlescape}rev/{symrev}{sessionvars%urlparameter}">changeset</a></li>
<li><a href="{url|urlescape}file/{symrev}{path|urlescape}{sessionvars%urlparameter}">browse</a></li>
wujek srujek
hgweb: side-by-side comparison functionality...
r17202 </ul>
<ul>
av6
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)...
r25606 <li><a href="{url|urlescape}file/{symrev}/{file|urlescape}{sessionvars%urlparameter}">file</a></li>
Thomas Arendsen Hein
hgweb: urlescape all urls, HTML escape repo/tag/branch/... names...
r18526 <li><a href="{url|urlescape}file/tip/{file|urlescape}{sessionvars%urlparameter}">latest</a></li>
av6
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)...
r25606 <li><a href="{url|urlescape}diff/{symrev}/{file|urlescape}{sessionvars%urlparameter}">diff</a></li>
wujek srujek
hgweb: side-by-side comparison functionality...
r17202 <li class="active">comparison</li>
av6
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)...
r25606 <li><a href="{url|urlescape}annotate/{symrev}/{file|urlescape}{sessionvars%urlparameter}">annotate</a></li>
<li><a href="{url|urlescape}log/{symrev}/{file|urlescape}{sessionvars%urlparameter}">file log</a></li>
<li><a href="{url|urlescape}raw-file/{symrev}/{file|urlescape}">raw</a></li>
wujek srujek
hgweb: side-by-side comparison functionality...
r17202 </ul>
<ul>
Thomas Arendsen Hein
hgweb: urlescape all urls, HTML escape repo/tag/branch/... names...
r18526 <li><a href="{url|urlescape}help{sessionvars%urlparameter}">help</a></li>
wujek srujek
hgweb: side-by-side comparison functionality...
r17202 </ul>
</div>
<div class="main">
Angel Ezquerra <angel.ezquerra at gmail.com>
hgweb: add a "URL breadcrumb" to the index and repository pages...
r18258 <h2 class="breadcrumb"><a href="/">Mercurial</a> {pathdef%breadcrumb}</h2>
av6
hgweb: link to revision by node hash in paper & coal...
r25617 <h3>
comparison {file|escape} @ {rev}:<a href="{url|urlescape}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a>
{branch%changelogbranchname}{tags%changelogtag}{bookmarks%changelogtag}
</h3>
wujek srujek
hgweb: side-by-side comparison functionality...
r17202
Gregory Szorc
hgweb: consolidate search form for paper...
r32758 {searchform}
wujek srujek
hgweb: side-by-side comparison functionality...
r17202
Angel Ezquerra
hgweb: apply the websub filter to revision descriptions...
r18628 <div class="description">{desc|strip|escape|websub|nonempty}</div>
wujek srujek
hgweb: side-by-side comparison functionality...
r17202
<table id="changesetEntry">
<tr>
<th>author</th>
<td>{author|obfuscate}</td>
</tr>
<tr>
<th>date</th>
<td class="date age">{date|rfc822date}</td>
</tr>
<tr>
<th>parents</th>
<td>{parent%filerevparent}</td>
</tr>
<tr>
<th>children</th>
<td>{child%filerevchild}</td>
</tr>
</table>
<div class="overflow">
<div class="sourcefirst"> comparison</div>
<div class="legend">
<span class="legendinfo equal">equal</span>
<span class="legendinfo delete">deleted</span>
<span class="legendinfo insert">inserted</span>
<span class="legendinfo replace">replaced</span>
</div>
wujek srujek
hgweb: fixes traceback for invalid files by removing top-level template...
r17302 <table class="bigtable">
<thead class="header">
<tr>
<th>{leftrev}:{leftnode|short}</th>
<th>{rightrev}:{rightnode|short}</th>
</tr>
</thead>
{comparison}
</table>
wujek srujek
hgweb: side-by-side comparison functionality...
r17202
</div>
</div>
</div>
{footer}