
    Fe                    6    d Z ddlmZ ddlmZ  G d de      Zy)zUtilities for LaTeX builder.    )annotations)Babelc                  N     e Zd ZdZdd fdZd	dZd	dZd
 fdZd fdZ xZ	S )ExtBabel)	bulgariankazakh	mongolianrussian	ukrainianc                N    || _         || _        d| _        t        |   |       y )NT)language_codeuse_polyglossia	supportedsuper__init__)selfr   r   	__class__s      </usr/lib/python3/dist-packages/sphinx/builders/latex/util.pyr   zExtBabel.__init__   s'    *.'    c                2    | j                   | j                  v S N)languagecyrillic_languagesr   s    r   uses_cyrilliczExtBabel.uses_cyrillic   s    }} 7 777r   c                    | j                   S r   )r   r   s    r   is_supported_languagezExtBabel.is_supported_language   s    ~~r   c                    t         |   |      }|dk(  r| j                  ry|r|S |j                  d      ryd| _        y)NngermangermanzhenglishF)r   language_namer   
startswithr   )r   r   r   r   s      r   r#   zExtBabel.language_name   sJ    7(7y T%9%9 O%%d+"DNr   c                    | j                   du ry| j                  dk(  r t        |   | j                        }|dk(  ryyy)z6Return options for polyglossia's ``\setmainlanguage``.FNr    r   zspelling=newzspelling=old)r   r   r   r#   r   )r   r   r   s     r   get_mainlanguage_optionsz!ExtBabel.get_mainlanguage_options%   sF    5(]]h&w,T-?-?@H9$%%r   )F)r   strr   boolreturnNone)r)   r(   )r   r'   r)   r'   )r)   z
str | None)
__name__
__module____qualname__r   r   r   r   r#   r&   __classcell__)r   s   @r   r   r      s'    U(8 r   r   N)__doc__
__future__r   docutils.writers.latex2er   r    r   r   <module>r3      s    " " *(u (r   