From 99b27c0c006c0efb139380665707085814d93b12 Mon Sep 17 00:00:00 2001 From: Yoshiki Shibukawa Date: Fri, 24 Feb 2017 20:04:00 +0900 Subject: [PATCH] fix #3450:   is appeared in EPUB docs --- CHANGES | 2 +- sphinx/writers/html.py | 17 ++++++++++++++++- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/CHANGES b/CHANGES index 32b44bb2a..3d299540a 100644 --- a/CHANGES +++ b/CHANGES @@ -31,7 +31,7 @@ Bugs fixed * #3427: autodoc: memory addresses are not stripped on Windows * #3428: xetex build tests fail due to fontspec v2.6 defining ``\strong`` * #3349: Result of ``IndexBuilder.load()`` is broken - +* #3450:   is appeared in EPUB docs Testing -------- diff --git a/sphinx/writers/html.py b/sphinx/writers/html.py index f606e26a0..07746f6a7 100644 --- a/sphinx/writers/html.py +++ b/sphinx/writers/html.py @@ -131,7 +131,7 @@ class HTMLTranslator(BaseTranslator): pass def visit_desc_returns(self, node): - self.body.append(' → ') + self.body.append(' → ') def depart_desc_returns(self, node): pass @@ -727,6 +727,11 @@ class HTMLTranslator(BaseTranslator): self.body.append(self.starttag(node, 'tr', '')) node.column = 0 + def visit_entry(self, node): + BaseTranslator.visit_entry(self, node) + if self.body[-1] == ' ': + self.body[-1] = ' ' + def visit_field_list(self, node): self._fieldlist_row_index = 0 return BaseTranslator.visit_field_list(self, node) @@ -739,6 +744,12 @@ class HTMLTranslator(BaseTranslator): node['classes'].append('field-odd') self.body.append(self.starttag(node, 'tr', '', CLASS='field')) + def visit_field_name(self, node): + context_count = len(self.context) + BaseTranslator.visit_field_name(self, node) + if context_count != len(self.context): + self.context[-1] = self.context[-1].replace(' ', ' ') + def visit_math(self, node, math_env=''): self.builder.warn('using "math" markup without a Sphinx math extension ' 'active, please use one of the math extensions ' @@ -821,6 +832,10 @@ class SmartyPantsHTMLTranslator(HTMLTranslator): self.no_smarty -= 1 HTMLTranslator.depart_option(self, node) + def visit_option_group(self, node): + HTMLTranslator.visit_option_group(self, node) + self.context[-2] = self.context[-2].replace(' ', ' ') + def bulk_text_processor(self, text): if self.no_smarty <= 0: return sphinx_smarty_pants(text)