mercurial/help.py
changeset 8864 cad6370a15cb
parent 8863 7b19c3c0172b
child 8865 37d8a5ddd499
equal deleted inserted replaced
8863:7b19c3c0172b 8864:cad6370a15cb
    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"),