[PATCH 2 of 4] extensions: factor extraction of synopses
Cédric Duval
cedricduval at free.fr
Fri Jul 31 01:06:34 CDT 2009
# HG changeset patch
# User Cédric Duval <cedricduval at free.fr>
# Date 1249020240 -7200
# Node ID f106029efa922413437e594ed68da32909a9f42a
# Parent be5a81430dd6903ac1497315cc49e0456d568a12
extensions: factor extraction of synopses
diff --git a/mercurial/extensions.py b/mercurial/extensions.py
--- a/mercurial/extensions.py
+++ b/mercurial/extensions.py
@@ -145,35 +145,23 @@
mod = getattr(mod, name)
return gettext(mod.__doc__) or _('(no help text available)')
+def synopses(names):
+ '''return a dict of {name: synopsis} from a list of extensions' names'''
+ exts = {}
+ maxlength = 0
+ for name in names:
+ maxlength = max(len(name), maxlength)
+ exts[name] = doc(name).splitlines()[0].strip()
+ return exts, maxlength
+
def disabled():
'''find disabled extensions from hgext
returns a dict of {name: desc}, and the max name length'''
-
import hgext
extpath = os.path.dirname(os.path.abspath(hgext.__file__))
-
- exts = {}
- maxlength = 0
- for name in listexts(extpath):
- if name in _order:
- continue
-
- exts[name] = doc(name).splitlines()[0]
-
- if len(name) > maxlength:
- maxlength = len(name)
-
- return exts, maxlength
+ names = listexts(extpath)
+ return synopses(names.difference(_order))
def enabled():
'''return a dict of {name: desc} of extensions, and the max name length'''
- exts = {}
- maxlength = 0
- exthelps = []
- for ename, ext in extensions():
- doc = (gettext(ext.__doc__) or _('(no help text available)'))
- ename = ename.split('.')[-1]
- maxlength = max(len(ename), maxlength)
- exts[ename] = doc.splitlines()[0].strip()
-
- return exts, maxlength
+ return synopses(_order)
More information about the Mercurial-devel
mailing list