summaryrefslogtreecommitdiff
path: root/sphinx/application.py
diff options
context:
space:
mode:
authorGeorg Brandl <georg@python.org>2010-02-21 21:49:38 +0100
committerGeorg Brandl <georg@python.org>2010-02-21 21:49:38 +0100
commitdb8df49c09f49250cda9a90cd19005b82ffb54e8 (patch)
treecdfa96fe9ae0b7d76bc9ecfe42a013afa1e90f80 /sphinx/application.py
parent78ae60e4534807505311b9d2c1673609a7b5f4c6 (diff)
downloadsphinx-db8df49c09f49250cda9a90cd19005b82ffb54e8.tar.gz
Add method for adding custom indexes.
Diffstat (limited to 'sphinx/application.py')
-rw-r--r--sphinx/application.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/sphinx/application.py b/sphinx/application.py
index cd9baf9c..7d4e3cac 100644
--- a/sphinx/application.py
+++ b/sphinx/application.py
@@ -405,6 +405,13 @@ class Sphinx(object):
raise ExtensionError('domain %s not yet registered' % domain)
self.domains[domain].roles[name] = role
+ # XXX needs documentation
+ def add_index_to_domain(self, domain, name, localname, shortname, func):
+ if domain not in self.domains:
+ raise ExtensionError('domain %s not yet registered' % domain)
+ self.domains[domain].indices.append((name, longname, shortname))
+ setattr(self.domains[domain], '_get_%s_index' % name, func)
+
def add_object_type(self, directivename, rolename, indextemplate='',
parse_node=None, ref_nodeclass=None, objname=''):
StandardDomain.object_types[directivename] = \