Mercurial > hg
comparison hgext/churn.py @ 32837:50586a0a946f
cmdutil: factor out helper to create changeset_templater with literal template
changeset_templater has lots of arguments, but most callers only need to
specify a literal template 'tmpl'.
"hg debugtemplate" has no diff option, which means 'opts' were effectively {},
so dropped opts.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Sat, 22 Apr 2017 18:42:03 +0900 |
parents | 04baab18d60a |
children | 26ed66ab1e72 |
comparison
equal
deleted
inserted
replaced
32836:29558247b00e | 32837:50586a0a946f |
---|---|
29 # Note for extension authors: ONLY specify testedwith = 'ships-with-hg-core' for | 29 # Note for extension authors: ONLY specify testedwith = 'ships-with-hg-core' for |
30 # extensions which SHIP WITH MERCURIAL. Non-mainline extensions should | 30 # extensions which SHIP WITH MERCURIAL. Non-mainline extensions should |
31 # be specifying the version(s) of Mercurial they are tested with, or | 31 # be specifying the version(s) of Mercurial they are tested with, or |
32 # leave the attribute unspecified. | 32 # leave the attribute unspecified. |
33 testedwith = 'ships-with-hg-core' | 33 testedwith = 'ships-with-hg-core' |
34 | |
35 def maketemplater(ui, repo, tmpl): | |
36 return cmdutil.changeset_templater(ui, repo, False, None, tmpl, None, False) | |
37 | 34 |
38 def changedlines(ui, repo, ctx1, ctx2, fns): | 35 def changedlines(ui, repo, ctx1, ctx2, fns): |
39 added, removed = 0, 0 | 36 added, removed = 0, 0 |
40 fmatch = scmutil.matchfiles(repo, fns) | 37 fmatch = scmutil.matchfiles(repo, fns) |
41 diff = ''.join(patch.diff(repo, ctx1.node(), ctx2.node(), fmatch)) | 38 diff = ''.join(patch.diff(repo, ctx1.node(), ctx2.node(), fmatch)) |
53 t, tz = ctx.date() | 50 t, tz = ctx.date() |
54 date = datetime.datetime(*time.gmtime(float(t) - tz)[:6]) | 51 date = datetime.datetime(*time.gmtime(float(t) - tz)[:6]) |
55 return date.strftime(opts['dateformat']) | 52 return date.strftime(opts['dateformat']) |
56 else: | 53 else: |
57 tmpl = opts.get('oldtemplate') or opts.get('template') | 54 tmpl = opts.get('oldtemplate') or opts.get('template') |
58 tmpl = maketemplater(ui, repo, tmpl) | 55 tmpl = cmdutil.makelogtemplater(ui, repo, tmpl) |
59 def getkey(ctx): | 56 def getkey(ctx): |
60 ui.pushbuffer() | 57 ui.pushbuffer() |
61 tmpl.show(ctx) | 58 tmpl.show(ctx) |
62 return ui.popbuffer() | 59 return ui.popbuffer() |
63 | 60 |