96 if len(name) > maxlength: |
96 if len(name) > maxlength: |
97 maxlength = len(name) |
97 maxlength = len(name) |
98 |
98 |
99 return exts, maxlength |
99 return exts, maxlength |
100 |
100 |
|
101 def enabledextensions(): |
|
102 '''Return the list of enabled extensions, and max name length''' |
|
103 enabled = list(extensions.extensions()) |
|
104 exts = {} |
|
105 maxlength = 0 |
|
106 |
|
107 if enabled: |
|
108 exthelps = [] |
|
109 for ename, ext in enabled: |
|
110 doc = (gettext(ext.__doc__) or _('(no help text available)')) |
|
111 ename = ename.split('.')[-1] |
|
112 maxlength = max(len(ename), maxlength) |
|
113 exts[ename] = doc.splitlines(0)[0].strip() |
|
114 |
|
115 return exts, maxlength |
|
116 |
|
117 def extensionslisting(header, exts, maxlength): |
|
118 '''Return a text listing of the given extensions''' |
|
119 result = '' |
|
120 |
|
121 if exts: |
|
122 result += '\n%s\n\n' % header |
|
123 for name, desc in sorted(exts.iteritems()): |
|
124 result += ' %s %s\n' % (name.ljust(maxlength), desc) |
|
125 |
|
126 return result |
|
127 |
101 def topicextensions(): |
128 def topicextensions(): |
102 doc = _(r''' |
129 doc = _(r''' |
103 Mercurial has an extension mechanism for adding new features. |
130 Mercurial has an extension mechanism for adding new features. |
104 |
131 |
105 To enable an extension "foo" bundled with Mercurial, create an |
132 To enable an extension "foo" bundled with Mercurial, create an |
107 |
134 |
108 [extensions] |
135 [extensions] |
109 foo = |
136 foo = |
110 ''') |
137 ''') |
111 |
138 |
|
139 exts, maxlength = enabledextensions() |
|
140 doc += extensionslisting(_('enabled extensions:'), exts, maxlength) |
|
141 |
112 exts, maxlength = additionalextensions() |
142 exts, maxlength = additionalextensions() |
113 if exts: |
143 doc += extensionslisting(_('non-enabled extensions:'), exts, maxlength) |
114 doc += _('\nnon-enabled extensions:\n\n') |
|
115 for name, desc in sorted(exts.iteritems()): |
|
116 doc += ' %s %s\n' % (name.ljust(maxlength), desc) |
|
117 |
144 |
118 return doc |
145 return doc |
119 |
146 |
120 helptable = ( |
147 helptable = ( |
121 (["dates"], _("Date Formats"), |
148 (["dates"], _("Date Formats"), |