#2382: Adjust spacing after abbreviations on figure numbers in LaTeX writer

This commit is contained in:
Takeshi KOMIYA 2016-05-28 10:37:21 +09:00
parent 98c27003d0
commit ca8aec969a
2 changed files with 14 additions and 7 deletions

View File

@ -69,6 +69,8 @@ Bugs fixed
* #2577: ``sphinx.ext.imgmath``: Invalid argument are passed to dvisvgm
* #2556: Xapian search does not work with Python 3
* #2581: The search doesn't work if language="es" (spanish)
* #2382: Adjust spacing after abbreviations on figure numbers in LaTeX writer
Release 1.4.1 (released Apr 12, 2016)

View File

@ -281,6 +281,11 @@ def width_to_latex_length(length_str):
return length_str
def escape_abbr(text):
"""Adjust spacing after abbreviations."""
return text.replace('.', '.\\@')
class LaTeXTranslator(nodes.NodeVisitor):
sectionnames = ["part", "chapter", "section", "subsection",
"subsubsection", "paragraph", "subparagraph"]
@ -559,27 +564,27 @@ class LaTeXTranslator(nodes.NodeVisitor):
figure = self.builder.config.numfig_format['figure'].split('%s', 1)
if len(figure) == 1:
ret.append('\\def\\fnum@figure{%s}\n' %
text_type(figure[0]).translate(tex_escape_map))
escape_abbr(text_type(figure[0]).translate(tex_escape_map)))
else:
definition = text_type(figure[0]).translate(tex_escape_map)
definition = escape_abbr(text_type(figure[0]).translate(tex_escape_map))
ret.append(self.babel_renewcommand('\\figurename', definition))
if figure[1]:
ret.append('\\makeatletter\n')
ret.append('\\def\\fnum@figure{\\figurename\\thefigure%s}\n' %
text_type(figure[1]).translate(tex_escape_map))
escape_abbr(text_type(figure[1]).translate(tex_escape_map)))
ret.append('\\makeatother\n')
table = self.builder.config.numfig_format['table'].split('%s', 1)
if len(table) == 1:
ret.append('\\def\\fnum@table{%s}\n' %
text_type(table[0]).translate(tex_escape_map))
escape_abbr(text_type(table[0]).translate(tex_escape_map)))
else:
definition = text_type(table[0]).translate(tex_escape_map)
definition = escape_abbr(text_type(table[0]).translate(tex_escape_map))
ret.append(self.babel_renewcommand('\\tablename', definition))
if table[1]:
ret.append('\\makeatletter\n')
ret.append('\\def\\fnum@table{\\tablename\\thetable%s}\n' %
text_type(table[1]).translate(tex_escape_map))
escape_abbr(text_type(table[1]).translate(tex_escape_map)))
ret.append('\\makeatother\n')
codeblock = self.builder.config.numfig_format['code-block'].split('%s', 1)
@ -587,7 +592,7 @@ class LaTeXTranslator(nodes.NodeVisitor):
pass # FIXME
else:
ret.append('\\SetupFloatingEnvironment{literal-block}{name=%s}\n' %
text_type(codeblock[0]).translate(tex_escape_map))
escape_abbr(text_type(codeblock[0]).translate(tex_escape_map)))
if table[1]:
pass # FIXME