summaryrefslogtreecommitdiff
path: root/docs/users_guide/flags.py
diff options
context:
space:
mode:
Diffstat (limited to 'docs/users_guide/flags.py')
-rw-r--r--docs/users_guide/flags.py17
1 files changed, 15 insertions, 2 deletions
diff --git a/docs/users_guide/flags.py b/docs/users_guide/flags.py
index c95b9aa96c..ac5de4cb57 100644
--- a/docs/users_guide/flags.py
+++ b/docs/users_guide/flags.py
@@ -212,8 +212,10 @@ class Flag(GenericFlag):
# Manually create references
name_string = ", ".join([':ghc-flag:`'+n+'`' for n in self.names])
reverse_string = ''
- if 'reverse' in self.options and self.options['reverse'] != '':
- reverse_string = ':ghc-flag:`' + self.options['reverse'] + '`'
+ reverse = self.options.get('reverse')
+ if reverse is not None and reverse != '':
+ reverse_string = ':ghc-flag:`' + reverse + '`'
+ self.names += [reverse]
self.register_flag(
self.names,
@@ -223,6 +225,17 @@ class Flag(GenericFlag):
self.options['type'],
reverse_string)
+ # Add additional targets
+ def add_target_and_index(self, name, sig, signode):
+
+ GenericFlag.add_target_and_index(self, name, sig, signode)
+
+ reverse = self.options.get('reverse')
+ if reverse is not None and reverse != '':
+ # Make this also addressable via the reverse flag
+ self.env.domaindata['std']['objects']['ghc-flag', reverse] = \
+ self.env.docname, 'ghc-flag-%s' % name
+
# This class inherits from Sphinx's internal GenericObject, which drives
# the add_object_type() utility function. We want to keep that tooling,
# but need to override some of the functionality.