D2009: narrowtemplates: update to use registrar mechanism
durin42 (Augie Fackler)
phabricator at mercurial-scm.org
Mon Feb 12 15:23:53 EST 2018
durin42 updated this revision to Diff 5514.
REPOSITORY
rHG Mercurial
CHANGES SINCE LAST UPDATE
https://phab.mercurial-scm.org/D2009?vs=5159&id=5514
REVISION DETAIL
https://phab.mercurial-scm.org/D2009
AFFECTED FILES
hgext/narrow/__init__.py
hgext/narrow/narrowtemplates.py
CHANGE DETAILS
diff --git a/hgext/narrow/narrowtemplates.py b/hgext/narrow/narrowtemplates.py
--- a/hgext/narrow/narrowtemplates.py
+++ b/hgext/narrow/narrowtemplates.py
@@ -8,24 +8,29 @@
from __future__ import absolute_import
from mercurial import (
+ registrar,
revlog,
- revset,
- templatekw,
util,
)
+keywords = {}
+templatekeyword = registrar.templatekeyword(keywords)
+revsetpredicate = registrar.revsetpredicate()
+
def _isellipsis(repo, rev):
if repo.changelog.flags(rev) & revlog.REVIDX_ELLIPSIS:
return True
return False
+ at templatekeyword('ellipsis')
def ellipsis(repo, ctx, templ, **args):
""":ellipsis: String. 'ellipsis' if the change is an ellipsis node,
else ''."""
if _isellipsis(repo, ctx.rev()):
return 'ellipsis'
return ''
+ at templatekeyword('outsidenarrow')
def outsidenarrow(repo, ctx, templ, **args):
""":outsidenarrow: String. 'outsidenarrow' if the change affects no
tracked files, else ''."""
@@ -35,15 +40,9 @@
return 'outsidenarrow'
return ''
+ at revsetpredicate('ellipsis')
def ellipsisrevset(repo, subset, x):
"""``ellipsis()``
Changesets that are ellipsis nodes.
"""
return subset.filter(lambda r: _isellipsis(repo, r))
-
-def setup():
- templatekw.keywords['ellipsis'] = ellipsis
- templatekw.keywords['outsidenarrow'] = outsidenarrow
-
- revset.symbols['ellipsis'] = ellipsisrevset
- revset.safesymbols.add('ellipsis')
diff --git a/hgext/narrow/__init__.py b/hgext/narrow/__init__.py
--- a/hgext/narrow/__init__.py
+++ b/hgext/narrow/__init__.py
@@ -62,7 +62,6 @@
narrowrevlog.setup()
narrowbundle2.setup()
narrowmerge.setup()
- narrowtemplates.setup()
narrowcommands.setup()
narrowchangegroup.setup()
narrowwirepeer.uisetup()
@@ -91,3 +90,6 @@
extensions.wrapfunction(verifymod.verifier, '__init__', _verifierinit)
extensions.wrapfunction(hg, 'postshare', narrowrepo.wrappostshare)
extensions.wrapfunction(hg, 'copystore', narrowrepo.unsharenarrowspec)
+
+templatekeyword = narrowtemplates.templatekeyword
+revsetpredicate = narrowtemplates.revsetpredicate
To: durin42, #hg-reviewers, indygreg
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list