diff -r 2891079fb0c0 -r 46859b437697 mercurial/formatter.py --- a/mercurial/formatter.py Thu Mar 15 21:22:52 2018 +0900 +++ b/mercurial/formatter.py Thu Mar 15 21:38:57 2018 +0900 @@ -504,6 +504,10 @@ 'ui': ui, } + def availablekeys(self, context, mapping): + return {k for k, g in self._gettermap.iteritems() + if g(self, context, mapping, k) is not None} + def knownkeys(self): return self._knownkeys