o
    dw#[?  ã                   @   sL   d Z ddlZddlZG dd„ dejjƒZG dd„ deƒZG dd„ deƒZdS )	z.

Additional support for Pygments formatter.

é    Nc                   @   s   e Zd Zdd„ Zddd„ZdS )ÚOdtPygmentsFormatterc                 C   s   t jj | ¡ || _|| _d S ©N)ÚpygmentsÚ	formatterÚ	FormatterÚ__init__Úrststyle_functionÚescape_function)Úselfr   r	   © r   úL/usr/lib/python3/dist-packages/docutils/writers/odf_odt/pygmentsformatter.pyr      s   
zOdtPygmentsFormatter.__init__r   c                 C   s   |   ||¡S r   )r   )r
   ÚnameÚ
parametersr   r   r   Úrststyle   s   zOdtPygmentsFormatter.rststyleN)r   )Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r      s    r   c                   @   ó   e Zd Zdd„ ZdS )ÚOdtPygmentsProgFormatterc                 C   sv  t jj}|D ]²\}}|  |¡}||jkr |  d¡}d||f }n“||jjkr2|  d¡}d||f }n�||jjj	|jjj	j
|jjj|jjj|jjj|jjfv rZ|  d¡}d||f }nY||jkrk|  d¡}d||f }nH||jkr||  d¡}d||f }n7||jjkrŽ|  d¡}d||f }n%||jjkr |  d¡}d||f }n||jkr±|  d	¡}d||f }n|}| |¡ qd S )
Núcodeblock-keywordú.<text:span text:style-name="%s">%s</text:span>úcodeblock-stringzcodeblock-numberúcodeblock-operatorúcodeblock-commentzcodeblock-classnamezcodeblock-functionnameúcodeblock-name)r   ÚtokenÚTokenr	   ÚKeywordr   ÚLiteralÚStringÚNumberÚIntegerÚLongÚFloatÚHexÚOctÚOperatorÚCommentÚNameÚClassÚFunctionÚwrite©r
   ÚtokensourceÚoutfileÚ
tokenclassÚttypeÚvalueÚs2Ús1r   r   r   Úformat   sj   


ÿ
ÿ
ú
ÿ

ÿ

ÿ
ÿ
ÿ

ÿÕzOdtPygmentsProgFormatter.formatN©r   r   r   r4   r   r   r   r   r      ó    r   c                   @   r   )ÚOdtPygmentsLaTeXFormatterc                 C   s  t jj}|D ]ƒ\}}|  |¡}||jkr |  d¡}d||f }nd||jj|jjjfv r7|  d¡}d||f }nM||j	j
krI|  d¡}d||f }n;||jkrp|d dkrd|  d¡}d||d d… f }n |  d¡}d||f }n||j	jkr‚|  d	¡}d||f }n|}| |¡ qd S )
Nr   r   r   r   éÿÿÿÿÚ
r   z/<text:span text:style-name="%s">%s</text:span>
r   )r   r   r   r	   r   r   r   r   ÚBacktickr(   Ú	Attributer'   ÚBuiltinr+   r,   r   r   r   r4   L   sL   


ÿÿ
ÿ
ÿ

ÿ
ÿ
ÿáz OdtPygmentsLaTeXFormatter.formatNr5   r   r   r   r   r7   K   r6   r7   )Ú__doc__r   Úpygments.formatterr   r   r   r   r7   r   r   r   r   Ú<module>   s   
1