From ee52c7cd4f5e0a300c8fdd897c9529f5c633c7ed Mon Sep 17 00:00:00 2001 From: Alex Gaynor Date: Tue, 3 Oct 2017 20:59:44 -0400 Subject: [PATCH] Don't override the smart_quotes setting if it was already set This is needed to fix: https://github.com/sphinx-contrib/spelling/issues/1 --- sphinx/environment/__init__.py | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/sphinx/environment/__init__.py b/sphinx/environment/__init__.py index 126a962a3..f522bd576 100644 --- a/sphinx/environment/__init__.py +++ b/sphinx/environment/__init__.py @@ -676,19 +676,20 @@ class BuildEnvironment(object): language = self.config.language or 'en' self.settings['language_code'] = language - self.settings['smart_quotes'] = True - if self.config.html_use_smartypants is not None: - warnings.warn("html_use_smartypants option is deprecated. Smart " - "quotes are on by default; if you want to disable " - "or customize them, use the smart_quotes option in " - "docutils.conf.", - RemovedInSphinx17Warning) - self.settings['smart_quotes'] = self.config.html_use_smartypants - for tag in normalize_language_tag(language): - if tag in smartchars.quotes: - break - else: - self.settings['smart_quotes'] = False + if 'smart_quotes' not in self.settings: + self.settings['smart_quotes'] = True + if self.config.html_use_smartypants is not None: + warnings.warn("html_use_smartypants option is deprecated. Smart " + "quotes are on by default; if you want to disable " + "or customize them, use the smart_quotes option in " + "docutils.conf.", + RemovedInSphinx17Warning) + self.settings['smart_quotes'] = self.config.html_use_smartypants + for tag in normalize_language_tag(language): + if tag in smartchars.quotes: + break + else: + self.settings['smart_quotes'] = False docutilsconf = path.join(self.srcdir, 'docutils.conf') # read docutils.conf from source dir, not from current dir