
    Fe                       U d Z ddlmZ ddlZddlZddlZddlZ	 ddlZ ej                  d      Z
ded<   i Zded<   d d	Zd!dZ e       Zd
ed<   d"dZd#dZd$dZd$dZd%d&dZd dZd'dZdddddddZej1                         D ]  \  ZZdez   ee<    g dZ eed      D ]  \  Z\  ZZdez  ee<   dedz   z  ee<    ejA                         Z!eD ]
  Z ee        y# e$ r dZY w xY w)(zFormat colored console output.    )annotationsNz\[(\d\d;){0,2}\d\dmzre.Pattern[str]_ansi_rezdict[str, str]codesc                D    | j                  dd      j                  d      S )z4Safely encode a string for printing to the terminal.asciibackslashreplace)encodedecodess    5/usr/lib/python3/dist-packages/sphinx/util/console.pyterminal_safer      s    88G/077@@    intc                 D    t        j                         j                  dz
  S )z,Return the width of the terminal in columns.   )shutilget_terminal_sizecolumns r   r   get_terminal_widthr      s    ##%--11r   _twc           	         t         s| dz   S | j                  t        t        |       z   t        t        j                  d|             z
        dz   S )N
 )r   ljustr   lenr   sub)texts    r   term_width_liner!   "   sB    d{ zz#D	/CR0F,GGH4OOr   c                    dt         j                  v ryt        j                  dk(  rt        t	        j
                          ydt         j                  v ryt        t        j                  d      syt        j                  j                         sydt         j                  v ryt         j                  j                  dd	      j                         } | d
v sd| v ryy)NNO_COLORFwin32TFORCE_COLORisatty	COLORTERMTERMdumb)xtermlinuxcolor)osenvironsysplatformcoloramainithasattrstdoutr&   getlower)terms    r   color_terminalr8   +   s    RZZ
||w8#7

"3::x(::bjj ::>>&&)//1D!!W_r   c                     t         j                  dk(  rt        t        j                          t        j                          y )Nr$   )r/   r0   r1   deinitr   clearr   r   r   nocolorr<   ?   s&    
||w8#7	KKMr   c                 6    t         j                  t               y N)r   update_orig_codesr   r   r   coloronrA   E   s    	LLr   c                8    dfd} ||       |z    |d      z   S )Nc                r    t         j                  | d      }r|rt        j                  dk7  rd|z   dz   S |S )Nr   r$   )r   r5   r/   r0   )nameescape
input_modes     r   escseqzcolorize.<locals>.escseqJ   s9     4$&S\\W%<&=4''Mr   reset)rF   strreturnrK   r   )rF   r    rH   rI   s     ` r   colorizerM   I   s"    
 $<$00r   c                L    t        j                  d      j                  d|       S )Nz.*?mr   )recompiler   r   s    r   strip_colorsrQ   Y   s    ::j!%%b!,,r   c                ,     d fd}|t                <   y )Nc                    t        |       S r>   )rM   )r    rF   s    r   innerz create_color_func.<locals>.inner^   s    d##r   r    rK   rL   rK   )globals)rF   rT   s   ` r   create_color_funcrW   ]   s    $GIdOr   z	39;49;00m01m02m03m04m05m)rJ   boldfaintstandout	underlineblinkz[))blackdarkgray)darkredred)	darkgreengreen)brownyellow)darkblueblue)purplefuchsia)	turquoiseteal)	lightgraywhite   z[%im<   )r   rK   rL   rK   )rL   r   rU   )rL   bool)rL   None)F)rF   rK   r    rK   rH   rt   rL   rK   )rF   rK   rL   ru   )"__doc__
__future__r   r-   rO   r   r/   r1   ImportErrorrP   r   __annotations__r   r   r   r   r!   r8   r<   rA   rM   rQ   rW   _attrsitems_name_value_colors	enumerateidarklightcopyr@   r   r   r   <module>r      sE   $ " 	 	  

 'BJJ'EF/ F~ A
2
 S P(1 - 
 \\^ $ME6V#E%L$	 "'2. )A}eq.E$KR(E%L) jjl Eeg  Hs   C" "C,+C,