diff -r 31dad7a5b4ed -r ba5b74f780d5 mercurial/templatekw.py --- a/mercurial/templatekw.py Tue Apr 04 22:20:06 2017 +0900 +++ b/mercurial/templatekw.py Tue Apr 04 22:31:59 2017 +0900 @@ -28,6 +28,7 @@ and to access raw values: - "{ifcontains(file, files, ...)}", "{ifcontains(key, extras, ...)}" - "{get(extras, key)}" + - "{files|json}" """ def __init__(self, gen, values, makemap, joinfmt): @@ -43,8 +44,11 @@ return x in self._values def __len__(self): return len(self._values) + def __iter__(self): + return iter(self._values) def __getattr__(self, name): - if name != 'get': + if name not in ('get', 'items', 'iteritems', 'iterkeys', 'itervalues', + 'keys', 'values'): raise AttributeError(name) return getattr(self._values, name)