Comments
Patch
@@ -1428,24 +1428,8 @@ class changeset_templater(changeset_prin
def _show(self, ctx, copies, matchfn, props):
'''show a single changeset or file revision'''
-
- showlist = templatekw.showlist
-
- # showparents() behavior depends on ui trace level which
- # causes unexpected behaviors at templating level and makes
- # it harder to extract it in a standalone function. Its
- # behavior cannot be changed so leave it here for now.
- def showparents(**args):
- ctx = args['ctx']
- parents = [[('rev', p.rev()),
- ('node', p.hex()),
- ('phase', p.phasestr())]
- for p in scmutil.meaningfulparents(self.repo, ctx)]
- return showlist('parent', parents, **args)
-
props = props.copy()
props.update(templatekw.keywords)
- props['parents'] = showparents
props['templ'] = self.t
props['ctx'] = ctx
props['repo'] = self.repo
@@ -397,11 +397,17 @@ def showp2node(repo, ctx, templ, **args)
parent, all digits are 0."""
return ctx.p2().hex()
-def _showparents(**args):
+def showparents(**args):
""":parents: List of strings. The parents of the changeset in "rev:node"
format. If the changeset has only one "natural" parent (the predecessor
revision) nothing is shown."""
- pass
+ repo = args['repo']
+ ctx = args['ctx']
+ parents = [[('rev', p.rev()),
+ ('node', p.hex()),
+ ('phase', p.phasestr())]
+ for p in scmutil.meaningfulparents(repo, ctx)]
+ return showlist('parent', parents, **args)
def showphase(repo, ctx, templ, **args):
""":phase: String. The changeset phase name."""
@@ -491,6 +497,7 @@ keywords = {
'p1node': showp1node,
'p2rev': showp2rev,
'p2node': showp2node,
+ 'parents': showparents,
'phase': showphase,
'phaseidx': showphaseidx,
'rev': showrev,
@@ -499,7 +506,6 @@ keywords = {
}
dockeywords = {
- 'parents': _showparents,
}
dockeywords.update(keywords)