Mercurial > hg-stable
changeset 25509:576d6c74784b
templater: make pad function evaluate both string and rawstring templates
"pad" function and "rawstring" type were introduced in parallel, aa51392da507
in default and 5ab28a2e9962 in stable respectively. Therefore, "pad" function
lacked handling of "rawstring" unintentionally.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Mon, 08 Jun 2015 18:48:45 +0900 |
parents | b8fd605b0c88 |
children | dd511b5cb818 |
files | mercurial/templater.py tests/test-command-template.t |
diffstat | 2 files changed, 9 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/templater.py Sat Jun 06 22:10:18 2015 -0400 +++ b/mercurial/templater.py Mon Jun 08 18:48:45 2015 +0900 @@ -310,10 +310,7 @@ width = int(args[1][1]) - text = stringify(args[0][0](context, mapping, args[0][1])) - if args[0][0] == runstring: - text = stringify(runtemplate(context, mapping, - compiletemplate(text, context))) + text = stringify(_evalifliteral(args[0], context, mapping)) right = False fillchar = ' '
--- a/tests/test-command-template.t Sat Jun 06 22:10:18 2015 -0400 +++ b/tests/test-command-template.t Mon Jun 08 18:48:45 2015 +0900 @@ -3042,6 +3042,14 @@ 1------------------- {node|short} 0------------------- test +Test template string in pad function + + $ hg log -r 0 -T '{pad("\{{rev}}", 10)} {author|user}\n' + {0} test + + $ hg log -r 0 -T '{pad(r"\{rev}", 10)} {author|user}\n' + \0 test + Test ifcontains function $ hg log --template '{rev} {ifcontains(rev, "2 two 0", "is in the string", "is not")}\n'