From 581f425b4ec49e03e6f40faebed7c377de02cbaf Mon Sep 17 00:00:00 2001 From: Jakob Lykke Andersen Date: Fri, 20 Mar 2020 13:26:03 +0100 Subject: [PATCH] Conditional backslash addition in autodoc --- sphinx/ext/autodoc/__init__.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/sphinx/ext/autodoc/__init__.py b/sphinx/ext/autodoc/__init__.py index f865101bf..0832aeb3e 100644 --- a/sphinx/ext/autodoc/__init__.py +++ b/sphinx/ext/autodoc/__init__.py @@ -1043,8 +1043,9 @@ class FunctionDocumenter(DocstringSignatureMixin, ModuleLevelDocumenter): # typ sig = inspect.signature(self.object.__init__, bound_method=True) args = stringify_signature(sig, show_return_annotation=False, **kwargs) - # escape backslashes for reST - args = args.replace('\\', '\\\\') + if self.env.config.strip_signature_backslash: + # escape backslashes for reST + args = args.replace('\\', '\\\\') return args def document_members(self, all_members: bool = False) -> None: @@ -1437,8 +1438,9 @@ class MethodDocumenter(DocstringSignatureMixin, ClassLevelDocumenter): # type: sig = inspect.signature(self.object, bound_method=True) args = stringify_signature(sig, **kwargs) - # escape backslashes for reST - args = args.replace('\\', '\\\\') + if self.env.config.strip_signature_backslash: + # escape backslashes for reST + args = args.replace('\\', '\\\\') return args def add_directive_header(self, sig: str) -> None: