File: //usr/lib/python3/dist-packages/sphinx/writers/__pycache__/latex.cpython-310.pyc
o
�$�a!D � @ sD d Z ddlZddlZddlmZ ddlmZ ddlmZm Z m
Z
mZmZm
Z
mZmZ ddlmZmZ ddlmZmZmZ ddlmZmZ dd lmZ dd
lmZ ddlmZ ddl m!Z! dd
l"m#Z#m$Z$m%Z% ddl&m'Z'm(Z(m)Z) ddl*m+Z+ ddl,m-Z-m.Z. ddl/m0Z0 ddl1m2Z2 zddl3m4Z4 W n e5y� ddl6m4Z4 Y nw er�ddl7m8Z8 ddl9m:Z: e'�;e<�Z=dZ>g d�Z?edd� dddddd��Z@d ZAd!ZBe�Cd"�ZDG d#d$� d$ejE�ZFG d%d&� d&e!�ZGG d'd(� d(ejH�ZIG d)d*� d*�ZJG d+d,� d,�ZKd-eLd.eLfd/d0�ZMd9d2eLd3eNd.eLfd4d5�ZOG d6d7� d7e+�ZPdd8lQmRZRmSZSmTZT dS ):a0
sphinx.writers.latex
~~~~~~~~~~~~~~~~~~~~
Custom docutils writer for LaTeX.
Much of this code is adapted from Dave Kuhlman's "docpy" writer from his
docutils sandbox.
:copyright: Copyright 2007-2021 by the Sphinx team, see AUTHORS.
:license: BSD, see LICENSE for details.
� N)�defaultdict)�path)�
TYPE_CHECKING�Any�Dict�Iterable�List�Set�Tuple�cast)�nodes�writers)�Element�Node�Text)�addnodes�highlighting)�RemovedInSphinx50Warning)�
IndexEntry)�StandardDomain)�SphinxError)�_�__�admonitionlabels)�logging�
split_into� texescape)�SphinxTranslator)�clean_astext�
get_prev_node)�
LaTeXRenderer)�tex_replace_map)�toRoman)�LaTeXBuilder)�Theme� )�part�chapter�section�
subsection�
subsubsection� paragraph�subparagraphc C s dS )N�\arabic� r. r. r. �6/usr/lib/python3/dist-packages/sphinx/writers/latex.py�<lambda>3 s r0 r- z\alphz\Alphz\romanz\Roman)�arabic�
loweralpha�
upperalpha�
lowerroman�
upperroman�
z
z^(.*\S)\s+\(([^()]*)\)\s*$c @ � e Zd ZdZdS )�collected_footnotez5Footnotes that are collected are assigned this class.N)�__name__�
__module__�__qualname__�__doc__r. r. r. r/ r8 A � r8 c @ r7 )�UnsupportedErrorzMarkup is unsupported in LaTeXN)r9 r: r; �categoryr. r. r. r/ r>