Skip to content
Snippets Groups Projects
Commit e0c572d4 authored by Yuya Nishihara's avatar Yuya Nishihara
Browse files

help: pass around ui to doc loader (API)

This is necessary to hide DEPRECATED items conditionally.

Flagged as API change because it will break "hg help git|subversion".
parent 7e8e3c09
No related branches found
No related tags found
No related merge requests found
......@@ -79,7 +79,7 @@
errorcnt = 0
for names, sec, doc in helptable:
if callable(doc):
doc = doc()
doc = doc(ui)
errorcnt += checkseclevel(ui, doc,
'%s help topic' % names[0],
initlevel_topic)
......
......@@ -138,7 +138,7 @@
if sectionfunc:
ui.write(sectionfunc(sec))
if callable(doc):
doc = doc()
doc = doc(ui)
ui.write(doc)
ui.write("\n")
......
......@@ -34,8 +34,8 @@
rst.append('%s:%s: %s\n' % (' ' * indent, name, desc))
return rst
def extshelp():
rst = loaddoc('extensions')().splitlines(True)
def extshelp(ui):
rst = loaddoc('extensions')(ui).splitlines(True)
rst.extend(listexts(
_('enabled extensions:'), extensions.enabled(), showdeprecated=True))
rst.extend(listexts(_('disabled extensions:'), extensions.disabled()))
......@@ -83,7 +83,7 @@
if notomitted:
rst.append('\n\n.. container:: notomitted\n\n %s\n\n' % notomitted)
def topicmatch(kw):
def topicmatch(ui, kw):
"""Return help topics matching kw.
Returns {'section': [(name, summary), ...], ...} where section is
......@@ -101,7 +101,7 @@
# Old extensions may use a str as doc.
if (sum(map(lowercontains, names))
or lowercontains(header)
or (callable(doc) and lowercontains(doc()))):
or (callable(doc) and lowercontains(doc(ui)))):
results['topics'].append((names[0], header))
import commands # avoid cycle
for cmd, entry in commands.table.iteritems():
......@@ -139,7 +139,7 @@
def loaddoc(topic):
"""Return a delayed loader for help/topic.txt."""
def loader():
def loader(ui):
docdir = os.path.join(util.datapath, 'help')
path = os.path.join(docdir, topic + ".txt")
doc = gettext(util.readfile(path))
......@@ -415,7 +415,7 @@
if not doc:
rst.append(" %s\n" % _("(no help text available)"))
if callable(doc):
rst += [" %s\n" % l for l in doc().splitlines()]
rst += [" %s\n" % l for l in doc(ui).splitlines()]
if not ui.verbose:
omitted = _('(some details hidden, use --verbose'
......@@ -482,7 +482,7 @@
rst = []
kw = opts.get('keyword')
if kw:
matches = topicmatch(name)
matches = topicmatch(ui, name)
helpareas = []
if opts.get('extension'):
helpareas += [('extensions', _('Extensions'))]
......
......@@ -1105,7 +1105,7 @@
> def extsetup(ui):
> help.helptable.append((["topic-containing-verbose"],
> "This is the topic to test omit indicating.",
> lambda : testtopic))
> lambda ui: testtopic))
> EOF
$ echo '[extensions]' >> $HGRCPATH
$ echo "addverboseitems = `pwd`/addverboseitems.py" >> $HGRCPATH
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment