<s> """<STR_LIT>""" <EOL> __docformat__ = '<STR_LIT>' <EOL> import os <EOL> import os . path <EOL> import re <EOL> import docutils <EOL> from docutils import frontend , nodes , utils , writers , languages <EOL> from docutils . writers import latex2e <EOL> class Writer ( latex2e . Writer ) : <EOL> """<STR_LIT>""" <EOL> supported = ( '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ) <EOL> """<STR_LIT>""" <EOL> default_template = '<STR_LIT>' <EOL> default_preamble = '<STR_LIT:\n>' . join ( [ <EOL> r'<STR_LIT>' , <EOL> r'<STR_LIT>' , <EOL> r'<STR_LIT>' , <EOL> r'<STR_LIT>' , <EOL> ] ) <EOL> config_section = '<STR_LIT>' <EOL> config_section_dependencies = ( '<STR_LIT>' , '<STR_LIT>' ) <EOL> settings_spec = frontend . filter_settings_spec ( <EOL> latex2e . Writer . settings_spec , <EOL> '<STR_LIT>' , <EOL> template = ( '<STR_LIT>' % default_template , <EOL> [ '<STR_LIT>' ] , { '<STR_LIT:default>' : default_template , '<STR_LIT>' : '<STR_LIT>' } ) , <EOL> latex_preamble = ( '<STR_LIT>' <EOL> '<STR_LIT>' , <EOL> [ '<STR_LIT>' ] , <EOL> { '<STR_LIT:default>' : default_preamble } ) , <EOL> ) <EOL> def __init__ ( self ) : <EOL> latex2e . Writer . __init__ ( self ) <EOL> self . settings_defaults . update ( { '<STR_LIT>' : '<STR_LIT>' } ) <EOL> self . translator_class = XeLaTeXTranslator <EOL> class Babel ( latex2e . Babel ) : <EOL> """<STR_LIT>""" <EOL> language_codes = latex2e . Babel . language_codes . copy ( ) <EOL> language_codes . update ( { <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> } ) <EOL> language_codes = dict ( [ ( k . lower ( ) , v ) for ( k , v ) in language_codes . items ( ) ] ) <EOL> for key in ( '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> ) : <EOL> del ( language_codes [ key . lower ( ) ] ) <EOL> def __init__ ( self , language_code , reporter ) : <EOL> self . language_code = language_code <EOL> self . reporter = reporter <EOL> self . language = self . language_name ( language_code ) <EOL> self . otherlanguages = { } <EOL> self . warn_msg = '<STR_LIT>' <EOL> self . quote_index = <NUM_LIT:0> <EOL> self . quotes = ( '<STR_LIT:">' , '<STR_LIT:">' ) <EOL> self . literal_double_quote = u'<STR_LIT:">' <EOL> def __call__ ( self ) : <EOL> setup = [ r'<STR_LIT>' , <EOL> r'<STR_LIT>' % self . language ] <EOL> if self . otherlanguages : <EOL> setup . append ( r'<STR_LIT>' % <EOL> '<STR_LIT:U+002C>' . join ( sorted ( self . otherlanguages . keys ( ) ) ) ) <EOL> return '<STR_LIT:\n>' . join ( setup ) <EOL> class XeLaTeXTranslator ( latex2e . LaTeXTranslator ) : <EOL> def __init__ ( self , document ) : <EOL> self . is_xetex = True <EOL> latex2e . LaTeXTranslator . __init__ ( self , document , Babel ) <EOL> if self . latex_encoding == '<STR_LIT:utf8>' : <EOL> self . requirements . pop ( '<STR_LIT>' , None ) <EOL> else : <EOL> self . requirements [ '<STR_LIT>' ] = ( r'<STR_LIT>' <EOL> % self . latex_encoding ) </s>
