Mercurial > public > mercurial-scm > hg
comparison mercurial/debugcommands.py @ 30957:14794735faa8
debugcommands: move 'debugtemplate' in the new module
author | Pierre-Yves David <pierre-yves.david@ens-lyon.org> |
---|---|
date | Thu, 02 Feb 2017 10:06:01 +0100 |
parents | db30c6bfeb70 |
children | df73368c87c3 |
comparison
equal
deleted
inserted
replaced
30956:db30c6bfeb70 | 30957:14794735faa8 |
---|---|
38 encoding, | 38 encoding, |
39 error, | 39 error, |
40 exchange, | 40 exchange, |
41 extensions, | 41 extensions, |
42 fileset, | 42 fileset, |
43 formatter, | |
43 hg, | 44 hg, |
44 localrepo, | 45 localrepo, |
45 lock as lockmod, | 46 lock as lockmod, |
46 merge as mergemod, | 47 merge as mergemod, |
47 obsolete, | 48 obsolete, |
1947 for node in succsset[1:]: | 1948 for node in succsset[1:]: |
1948 ui.write(' ') | 1949 ui.write(' ') |
1949 ui.write(node2str(node)) | 1950 ui.write(node2str(node)) |
1950 ui.write('\n') | 1951 ui.write('\n') |
1951 | 1952 |
1953 @command('debugtemplate', | |
1954 [('r', 'rev', [], _('apply template on changesets'), _('REV')), | |
1955 ('D', 'define', [], _('define template keyword'), _('KEY=VALUE'))], | |
1956 _('[-r REV]... [-D KEY=VALUE]... TEMPLATE'), | |
1957 optionalrepo=True) | |
1958 def debugtemplate(ui, repo, tmpl, **opts): | |
1959 """parse and apply a template | |
1960 | |
1961 If -r/--rev is given, the template is processed as a log template and | |
1962 applied to the given changesets. Otherwise, it is processed as a generic | |
1963 template. | |
1964 | |
1965 Use --verbose to print the parsed tree. | |
1966 """ | |
1967 revs = None | |
1968 if opts['rev']: | |
1969 if repo is None: | |
1970 raise error.RepoError(_('there is no Mercurial repository here ' | |
1971 '(.hg not found)')) | |
1972 revs = scmutil.revrange(repo, opts['rev']) | |
1973 | |
1974 props = {} | |
1975 for d in opts['define']: | |
1976 try: | |
1977 k, v = (e.strip() for e in d.split('=', 1)) | |
1978 if not k: | |
1979 raise ValueError | |
1980 props[k] = v | |
1981 except ValueError: | |
1982 raise error.Abort(_('malformed keyword definition: %s') % d) | |
1983 | |
1984 if ui.verbose: | |
1985 aliases = ui.configitems('templatealias') | |
1986 tree = templater.parse(tmpl) | |
1987 ui.note(templater.prettyformat(tree), '\n') | |
1988 newtree = templater.expandaliases(tree, aliases) | |
1989 if newtree != tree: | |
1990 ui.note(("* expanded:\n"), templater.prettyformat(newtree), '\n') | |
1991 | |
1992 mapfile = None | |
1993 if revs is None: | |
1994 k = 'debugtemplate' | |
1995 t = formatter.maketemplater(ui, k, tmpl) | |
1996 ui.write(templater.stringify(t(k, **props))) | |
1997 else: | |
1998 displayer = cmdutil.changeset_templater(ui, repo, None, opts, tmpl, | |
1999 mapfile, buffered=False) | |
2000 for r in revs: | |
2001 displayer.show(repo[r], **props) | |
2002 displayer.close() | |
2003 | |
1952 @command('debugupgraderepo', [ | 2004 @command('debugupgraderepo', [ |
1953 ('o', 'optimize', [], _('extra optimization to perform'), _('NAME')), | 2005 ('o', 'optimize', [], _('extra optimization to perform'), _('NAME')), |
1954 ('', 'run', False, _('performs an upgrade')), | 2006 ('', 'run', False, _('performs an upgrade')), |
1955 ]) | 2007 ]) |
1956 def debugupgraderepo(ui, repo, run=False, optimize=None): | 2008 def debugupgraderepo(ui, repo, run=False, optimize=None): |