summaryrefslogtreecommitdiff
path: root/sphinx/application.py
diff options
context:
space:
mode:
Diffstat (limited to 'sphinx/application.py')
-rw-r--r--sphinx/application.py8
1 files changed, 4 insertions, 4 deletions
diff --git a/sphinx/application.py b/sphinx/application.py
index 58c4de6fb..ec793b19e 100644
--- a/sphinx/application.py
+++ b/sphinx/application.py
@@ -674,10 +674,10 @@ class Sphinx:
Add *override* keyword.
"""
logger.debug('[app] adding role: %r', (name, role))
- if name in roles._roles and not override:
+ if not override and docutils.is_role_registered(name):
logger.warning(__('role %r is already registered, it will be overridden'),
name, type='app', subtype='add_role')
- roles.register_local_role(name, role)
+ docutils.register_role(name, role)
def add_generic_role(self, name, nodeclass, override=False):
# type: (unicode, Any, bool) -> None
@@ -693,11 +693,11 @@ class Sphinx:
# Don't use ``roles.register_generic_role`` because it uses
# ``register_canonical_role``.
logger.debug('[app] adding generic role: %r', (name, nodeclass))
- if name in roles._roles and not override:
+ if not override and docutils.is_role_registered(name):
logger.warning(__('role %r is already registered, it will be overridden'),
name, type='app', subtype='add_generic_role')
role = roles.GenericRole(name, nodeclass)
- roles.register_local_role(name, role)
+ docutils.register_role(name, role)
def add_domain(self, domain, override=False):
# type: (Type[Domain], bool) -> None