latex: Disable babel if polyglossia loaded

This commit is contained in:
Takeshi KOMIYA 2016-10-20 00:35:20 +09:00
parent 68de92042f
commit 5af1713d60
2 changed files with 29 additions and 22 deletions

View File

@ -12,7 +12,7 @@
<%= cmappkg %>
<%= fontenc %>
<%= amsmath %>
<%= babel %>
<%= multilingual %>
<%= fontpkg %>
<%= fncychap %>
<%= longtable %>

View File

@ -61,7 +61,9 @@ DEFAULT_SETTINGS = {
'cmappkg': '\\usepackage{cmap}',
'fontenc': '\\usepackage[T1]{fontenc}',
'amsmath': '\\usepackage{amsmath,amssymb,amstext}',
'multilingual': '',
'babel': '\\usepackage{babel}',
'polyglossia': '',
'fontpkg': '\\usepackage{times}',
'fncychap': '\\usepackage[Bjarne]{fncychap}',
'longtable': '\\usepackage{longtable}',
@ -105,8 +107,7 @@ ADDITIONAL_SETTINGS = {
'inputenc': '\\usepackage[utf8]{inputenc}',
},
'xelatex': {
'babel': '', # disable babel
'inputenc': '\\usepackage{polyglossia}',
'polyglossia': '\\usepackage{polyglossia}',
'fontenc': '\\usepackage{fontspec}',
'fontpkg': '',
},
@ -393,8 +394,13 @@ class LaTeXTranslator(nodes.NodeVisitor):
# no need for \\noindent here, used in flushright
self.elements['logo'] = '\\sphinxincludegraphics{%s}\\par' % \
path.basename(builder.config.latex_logo)
# setup babel
# setup multilingual package
self.babel = ExtBabel(builder.config.language)
if self.elements['polyglossia']:
self.elements['babel'] = '' # disable babel forcely
self.elements['multilingual'] = self.elements['polyglossia']
elif self.elements['babel']:
self.elements['multilingual'] = self.elements['babel']
self.elements['classoptions'] += ',' + self.babel.get_language()
if builder.config.language:
if not self.babel.is_supported_language():
@ -413,6 +419,7 @@ class LaTeXTranslator(nodes.NodeVisitor):
self.elements['classoptions'] = ',dvipdfmx'
# disable babel which has not publishing quality in Japanese
self.elements['babel'] = ''
self.elements['multilingual'] = ''
# disable fncychap in Japanese documents
self.elements['fncychap'] = ''
if getattr(builder, 'usepackages', None):