diff --git a/mercurial/cmdutil.py b/mercurial/cmdutil.py --- a/mercurial/cmdutil.py +++ b/mercurial/cmdutil.py @@ -1647,8 +1647,9 @@ class changeset_templater(changeset_prin self.t(self._parts['footer'], **props)) def _lookuplogtemplate(ui, tmpl, style): - """ - Find the template matching the given template spec or style. + """Find the template matching the given template spec or style + + See formatter.lookuptemplate() for details. """ # ui settings diff --git a/mercurial/formatter.py b/mercurial/formatter.py --- a/mercurial/formatter.py +++ b/mercurial/formatter.py @@ -374,6 +374,21 @@ class templateformatter(baseformatter): self._out.write(templater.stringify(g)) def lookuptemplate(ui, topic, tmpl): + """Find the template matching the given -T/--template spec 'tmpl' + + 'tmpl' can be any of the following: + + - a literal template (e.g. '{rev}') + - a map-file name or path (e.g. 'changelog') + - a reference to [templates] in config file + - a path to raw template file + + A map file defines a stand-alone template environment. If a map file + selected, all templates defined in the file will be loaded, and the + template matching the given topic will be rendered. No aliases will be + loaded from user config. + """ + # looks like a literal template? if '{' in tmpl: return tmpl, None