##// END OF EJS Templates
extensions: simplify by selecting primary hgext
Dirkjan Ochtman -
r8872:d0c0013f default
parent child Browse files
Show More
@@ -134,42 +134,46 b' def pathdirs():'
134 def disabled():
134 def disabled():
135 '''find disabled extensions from hgext
135 '''find disabled extensions from hgext
136 returns a dict of {name: desc}, and the max name length'''
136 returns a dict of {name: desc}, and the max name length'''
137
138 import hgext
139 extpath = os.path.dirname(os.path.abspath(hgext.__file__))
140
137 exts = {}
141 exts = {}
138 maxlength = 0
142 maxlength = 0
139 for dir in filter(os.path.isdir,
143 for e in os.listdir(extpath):
140 (os.path.join(pd, 'hgext') for pd in pathdirs())):
141 for e in os.listdir(dir):
142 if e.endswith('.py'):
143 name = e.rsplit('.', 1)[0]
144 path = os.path.join(dir, e)
145 else:
146 name = e
147 path = os.path.join(dir, e, '__init__.py')
148
144
149 if name in exts or name == '__init__' or not os.path.exists(path):
145 if e.endswith('.py'):
150 continue
146 name = e.rsplit('.', 1)[0]
147 path = os.path.join(extpath, e)
148 else:
149 name = e
150 path = os.path.join(extpath, e, '__init__.py')
151
152 if name in exts or name == '__init__' or not os.path.exists(path):
153 continue
151
154
152 try:
155 try:
153 find(name)
156 find(name)
154 except KeyError:
157 except KeyError:
155 pass
158 pass
156 else:
159 else:
157 continue # enabled extension
160 continue # enabled extension
158
161
159 try:
162 try:
160 file = open(path)
163 file = open(path)
161 except IOError:
164 except IOError:
162 continue
165 continue
163 else:
166 else:
164 doc = help.moduledoc(file)
167 doc = help.moduledoc(file)
165 file.close()
168 file.close()
166
169
167 if doc: # extracting localized synopsis
170 if doc: # extracting localized synopsis
168 exts[name] = gettext(doc).splitlines()[0]
171 exts[name] = gettext(doc).splitlines()[0]
169 else:
172 else:
170 exts[name] = _('(no help text available)')
173 exts[name] = _('(no help text available)')
171 if len(name) > maxlength:
174
172 maxlength = len(name)
175 if len(name) > maxlength:
176 maxlength = len(name)
173
177
174 return exts, maxlength
178 return exts, maxlength
175
179
General Comments 0
You need to be logged in to leave comments. Login now