diff --git a/doc/gendoc.py b/doc/gendoc.py --- a/doc/gendoc.py +++ b/doc/gendoc.py @@ -92,9 +92,7 @@ def show_doc(ui): ui.write(_(" aliases: %s\n\n") % " ".join(d['aliases'])) # print topics - for t, doc in helptable: - l = t.split("|") - section = l[-1] + for names, section, doc in helptable: underlined(_(section).upper()) if callable(doc): doc = doc() diff --git a/mercurial/commands.py b/mercurial/commands.py --- a/mercurial/commands.py +++ b/mercurial/commands.py @@ -1339,14 +1339,10 @@ def help_(ui, name=None, with_version=Fa addglobalopts(True) def helptopic(name): - v = None - for i, d in help.helptable: - l = i.split('|') - if name in l: - v = i - header = l[-1] - doc = d - if not v: + for names, header, doc in help.helptable: + if name in names: + break + else: raise cmdutil.UnknownCommand(name) # description @@ -1423,9 +1419,8 @@ def help_(ui, name=None, with_version=Fa if ui.verbose: ui.write(_("\nspecial help topics:\n")) topics = [] - for i, d in help.helptable: - l = i.split('|') - topics.append((", ".join(l[:-1]), l[-1])) + for names, header, doc in help.helptable: + topics.append((", ".join(names), header)) topics_len = max([len(s[0]) for s in topics]) for t, desc in topics: ui.write(" %-*s %s\n" % (topics_len, t, desc)) diff --git a/mercurial/help.py b/mercurial/help.py --- a/mercurial/help.py +++ b/mercurial/help.py @@ -6,7 +6,7 @@ # of the GNU General Public License, incorporated herein by reference. helptable = ( - ("dates|Date Formats", + (["dates"], "Date Formats", r''' Some commands allow the user to specify a date: backout, commit, import, tag: Specify the commit date. @@ -45,7 +45,7 @@ helptable = ( "-{days}" - within a given number of days of today '''), - ("patterns|File Name Patterns", + (["patterns"], "File Name Patterns", r''' Mercurial accepts several notations for identifying one or more files at a time. @@ -91,7 +91,7 @@ helptable = ( '''), - ('environment|env|Environment Variables', + (['environment', 'env'], 'Environment Variables', r''' HG:: Path to the 'hg' executable, automatically passed when running hooks, @@ -162,7 +162,7 @@ PYTHONPATH:: appropriately if Mercurial is not installed system-wide. '''), - ('revs|revisions|Specifying Single Revisions', + (['revs', 'revisions'], 'Specifying Single Revisions', r''' Mercurial accepts several notations for identifying individual revisions. @@ -195,7 +195,7 @@ PYTHONPATH:: the first parent. '''), - ('mrevs|multirevs|Specifying Multiple Revisions', + (['mrevs', 'multirevs'], 'Specifying Multiple Revisions', r''' When Mercurial accepts more than one revision, they may be specified individually, or provided as a continuous range,