Mercurial > hg
diff mercurial/help/templates.txt @ 26485:43bf9471fae9
templater: introduce {latesttag()} function to match a pattern (issue4184)
This allows the latest class of tag to be found, such as a release candidate or
final build, instead of just the absolute latest.
It doesn't appear that the existing keyword can be given an optional argument.
There is a keyword, function and filter for 'date', so it doesn't seem harmful
to introduce a new function with the same name as an existing keyword. Most
functions are pretty Mercurial agnostic, but there is {revset()} as precedent.
Even though templatekw.getlatesttags() returns a single tuple, one entry of
which is a list, it is simplest to present this as a list of tags instead of a
single item, with each tag having a distance and change count attribute. It is
also closer to how {latesttag} returns a list of tags, and how this function
works when not given a '%' operator.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Sun, 23 Aug 2015 23:44:58 -0400 |
parents | e4609ec959f8 |
children | 6db47740e681 |
line wrap: on
line diff
--- a/mercurial/help/templates.txt Mon Aug 24 23:07:00 2015 -0400 +++ b/mercurial/help/templates.txt Sun Aug 23 23:44:58 2015 -0400 @@ -102,6 +102,10 @@ $ hg log --template "{bookmarks % '{bookmark}{ifeq(bookmark, active, '*')} '}\n" +- Find the previous release candidate tag, the distance and changes since the tag:: + + $ hg log -r . --template "{latesttag('re:^.*-rc$') % '{tag}, {changes}, {distance}'}\n" + - Mark the working copy parent with '@':: $ hg log --template "{ifcontains(rev, revset('.'), '@')}\n"