+
    TBi                        R t ^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIHt ^ RI	H
t
 ^ RIHt . RO]! ]4      ,           t/ t/ tR tR tR tR	 tR
 tRR ltR t ! R R]P0                  4      t]P4                  ],          t]! ]4      t]P<                  P?                  ]P<                  4       ]]P4                  ]&   ]=]=]=]=R# )z
pygments.formatters
~~~~~~~~~~~~~~~~~~~

Pygments formatters.

:copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
N)basename)
FORMATTERS)find_plugin_formatters)ClassNotFoundc                    V\         9  dE   \        P                  ! \        P                  ! V4      4      ;p\         V&   VP                  V 4      # \         V,          P                  V 4      # )zBReturn whether the supplied file name fn matches pattern filename.)_pattern_cacherecompilefnmatch	translatematch)fnglobpatterns   && A/usr/lib/python3.14/site-packages/pygments/formatters/__init__.py_fn_matchesr      sR    >!)+G4E4Ed4K)LL.&}}R  $%%b))    c                    \        V RRR.4      pVP                   F!  p\        W4      pV\        VP                  &   K#  	  R# )z4Load a formatter (and all others in the module too).N__all__)
__import__r   getattr_formatter_cachename)module_namemodformatter_nameclss   &   r   _load_formattersr   $   s;    
[$yk
:C++c*%(" &r   c               #     "   \         P                  ! 4        F=  p V ^,          \        9  d   \        V ^ ,          4       \        V ^,          ,          x  K?  	  \	        4        F	  w  rVx  K  	  R# 5i)z-Return a generator for all formatter classes.N)r   valuesr   r   r   )info_	formatters      r   get_all_formattersr#   ,   sX      !!#7**T!W%tAw'' $ /0 1s   A0A2c                    \         P                  ! 4        F3  w  rp pW9   g   K  V\        9  d   \        V4       \        V,          u # 	  \	        4        F  w  rEWP
                  9   g   K  Vu # 	  R# )z9Lookup a formatter by alias.

Returns None if not found.
N)r   r   r   r   r   aliases)aliasr   r   r%   r!   r   s   &     r   find_formatter_classr'   7   sc    
 -7,=,=,?(7Aq++ -#D))	 -@
 )*KKJ +r   c                N    \        V 4      pVf   \        RV : 24      hV! R/ VB # )z
Return an instance of a :class:`.Formatter` subclass that has `alias` in its
aliases list. The formatter is given the `options` at its instantiation.

Will raise :exc:`pygments.util.ClassNotFound` if no formatter with that
alias is found.
zno formatter found for name  )r'   r   )_aliasoptionsr   s   &, r   get_formatter_by_namer,   F   s2     v
&C
{:6*EFF>>r   c                    / p\        V R4      ;_uu_ 4       p\        VP                  4       V4       RRR4       W9  d   \        RV RV  24      hW1,          pV! R/ VB #   + '       g   i     L7; i  \         d   p\        RT  RT 24      hRp?i\         d    h \
         d   p\        RT 24      hRp?ii ; i)	a  
Return a `Formatter` subclass instance loaded from the provided file, relative
to the current directory.

The file is expected to contain a Formatter class named ``formattername``
(by default, CustomFormatter). Users should be very careful with the input, because
this method is equivalent to running ``eval()`` on the input file. The formatter is
given the `options` at its instantiation.

:exc:`pygments.util.ClassNotFound` is raised if there are any errors loading
the formatter.

.. versionadded:: 2.2
rbNz	no valid z class found in zcannot read z: z%error when loading custom formatter: r)   )openexecreadr   OSError	Exception)filenameformatternamer+   custom_namespacefformatter_classerrs   &&,    r   load_formatter_from_filer:   T   s    K(D!!Q+, " 0)M?:J8* UVV*9))) "!  >l8*Bse<==  KCC5IJJKsE   A5 A".A5 "A2	-A5 5B= BB=
B=)B=*B88B=c                   \        V 4      p \        P                  ! 4        FN  w  r#rEpV FA  p\        W4      '       g   K  V\        9  d   \        V4       \        V,          ! R/ VB u u # 	  KP  	  \        4        F5  w  rxVP                   F   p\        W4      '       g   K  V! R/ VB u u # 	  K7  	  \        RV : 24      h)z
Return a :class:`.Formatter` subclass instance that has a filename pattern
matching `fn`. The formatter is given the `options` at its instantiation.

Will raise :exc:`pygments.util.ClassNotFound` if no formatter for that filename
is found.
z!no formatter found for file name r)   )	r   r   r   r   r   r   r   	filenamesr   )	r   r+   modnamer   r!   r<   r4   _namer   s	   &,       r   get_formatter_for_filenamer?   v   s     
"B*4*;*;*=&qQ!H2((//$W-'-888	 " +> -.
H2((~W~% & / ;B6B
CCr   c                   *   a  ] tR t^t o RtR tRtV tR# )_automodulez Automatically import formatters.c                    \         P                  ! V4      pV'       d5   \        V^ ,          4       \        V^,          ,          p\	        WV4       V# \        V4      h)    )r   getr   r   setattrAttributeError)selfr   r    r   s   &&  r   __getattr___automodule.__getattr__   sG    ~~d#T!W%"47+CD$JT""r   r)   N)__name__
__module____qualname____firstlineno____doc__rH   __static_attributes____classdictcell__)__classdict__s   @r   rA   rA      s     *# #r   rA   )r,   r?   r#   r:   )CustomFormatter) rN   r   systypesr
   os.pathr   pygments.formatters._mappingr   pygments.pluginr   pygments.utilr   listr   r   r   r   r   r#   r'   r,   r:   r?   
ModuleTyperA   modulesrJ   oldmodnewmod__dict__updater)   r   r   <module>r`      s    
 
    3 2 '=?CJ?OP  *)KDD,
#%"" 
# 
X		X	   v 'H 
M6=&*flr   