+
    JV-j§<  ã                   ó  € R t ^ RIt^ RIHtHt ^ RIHtHtHtH	t	 ^ RI
HtHtHtHtHtHtHtHtHtHt ^ RIHt . ROt ! R R]4      t ! R R	]4      t ! R R]4      t ! R R]4      t ! R R
]4      t ! R R]4      tR# )zÄ
pygments.lexers.textfmts
~~~~~~~~~~~~~~~~~~~~~~~~

Lexers for various text formats.

:copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
N)Úguess_lexerÚget_lexer_by_name)Ú
RegexLexerÚbygroupsÚdefaultÚinclude)
ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚGenericÚLiteralÚPunctuation)ÚClassNotFoundÚIrcLogsLexerÚTodotxtLexerÚ	HttpLexerÚGettextLexerÚNotmuchLexerÚKernelLogLexerc                   ó  € ] tR t^tRtRtR.tR.tR.tRt	Rt
]P                  ]P                  ,          tRtR	R
]3R],           R,           ]! ]P$                  ]P(                  4      3R],           R,           ]! ]P$                  ]P(                  4      R3R],           R,           ]! ]P$                  ]]P.                  4      3R],           R,           ]! ]P$                  ]]]4      3R]3.RR]P4                  3R]R3./tRtR# )r   z<
Lexer for IRC logs in *irssi*, *xchat* or *weechat* style.
zIRC logsÚircz*.weechatlogztext/x-irclogz1https://en.wikipedia.org/wiki/Internet_Relay_ChatÚ af  
        (
          # irssi / xchat and others
          (?: \[|\()?                  # Opening bracket or paren for the timestamp
            (?:                        # Timestamp
                (?: (?:\d{1,4} [-/])*  # Date as - or /-separated groups of digits
                    (?:\d{1,4})
                 [T ])?                # Date/time separator: T or space
                (?: \d?\d [:.])*       # Time as :/.-separated groups of 1 or 2 digits
                    (?: \d?\d)
            )
          (?: \]|\))?\s+               # Closing bracket or paren for the timestamp
        |
          # weechat
          \d{4}\s\w{3}\s\d{2}\s        # Date
          \d{2}:\d{2}:\d{2}\s+         # Time + Whitespace
        |
          # xchat
          \w{3}\s\d{2}\s               # Date
          \d{2}:\d{2}:\d{2}\s+         # Time + Whitespace
        )?
    Úrootz^\*\*\*\*(.*)\*\*\*\*$Ú^z(\s*<[^>]*>\s*)$z/
                (\s*<.*?>\s*)          # Nick Úmsgzo
                (\s*[*]\s+)            # Star
                (\S+\s+.*?\n)          # Nick + rest of message zÅ
                (\s*(?:\*{3}|<?-[!@=P]?->?)\s*)  # Star(s) or symbols
                (\S+\s+)                     # Nick + Space
                (.*?\n)                         # Rest of message z^.*?\nz
\S+:(?!//)z.*\nú#pop© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__ÚnameÚaliasesÚ	filenamesÚ	mimetypesÚurlÚversion_addedÚreÚVERBOSEÚ	MULTILINEÚflagsÚ	timestampr	   r   ÚPreprocr   ÚTagr   r   ÚInsertedr   r   Ú	AttributeÚtokensÚ__static_attributes__r    ó    Úi/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/pygments/lexers/textfmts.pyr   r      s8  † ñð €DØˆg€GØÐ €IØ Ð!€IØ
=€CØ€Mà�J‰J˜Ÿ™Õ%€Eð€Ið. 	à&¨Ð0à�9�_Ð2Õ2±H¸W¿_¹_ÈdÏhÉhÓ4WÐXà�9�_ð  2õ 2á�g—o‘o t§x¡xÓ0°%ð9ð �9�_ð  Dõ Dñ �g—o‘o w°×0@Ñ0@ÓAðCð
 �9�_ð  Fõ Fñ �g—o‘o w°¸Ó@ð	Bð
 ˜Ðð)
ð, 	Ø˜DŸN™NÐ+Ø�d˜FÐ#ð
ð/„Fr7   c                   óD  € ] tR t^XtRtRtRR.tRR.t. ROtRt	Rt
R	R
]P                  3R]P                  3R]P                  3R]! ]]P&                  ]4      3R]3R]! ]P(                  ]]4      3R]! ]P(                  ]P.                  ]P(                  ]]4      3./tRtR# )r   z"
Lexer for Gettext catalog files.
zGettext CatalogÚpotÚpoz*.potz*.poz$https://www.gnu.org/software/gettextz0.9r   z	^#,\s.*?$z	^#:\s.*?$z^(#|#\.\s|#\|\s|#~\s|#\s).*$z^(")([A-Za-z-]+:)(.*")$z^".*"$z0^(msgid|msgid_plural|msgstr|msgctxt)(\s+)(".*")$z^(msgstr\[)(\d)(\])(\s+)(".*")$r    N)zapplication/x-gettextztext/x-gettextztext/gettext)r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r   ÚTypeÚDeclarationr	   ÚSingler   r   r   ÚPropertyÚVariabler   r   ÚIntegerr5   r6   r    r7   r8   r   r   X   sÄ   † ñð €DØ�dˆm€GØ˜&Ð!€IÚK€IØ
0€CØ€Mð 	Ø˜7Ÿ<™<Ð(Ø˜7×.Ñ.Ð/à,¨g¯n©nÐ=Ø'Ù�f˜dŸm™m¨VÓ4ð6à˜ÐØ@Ù�d—m‘m T¨6Ó2ð4à/Ù�d—m‘m V§^¡^°T·]±]ÀDÈ&ÓQðSð
ð„Fr7   c                   óB  a € ] tR t^tt o RtRtR.tRtRt]	P                  tRR ltR tR	 tR
 tRR]! ]P$                  ]]P(                  ]]P,                  ]]]4      R3R]! ]P,                  ]]]]]]P2                  ]4      R3.RR]3R]3R]R3.RR]3./tR tRtV tR# )r   z
Lexer for HTTP sessions.
ÚHTTPÚhttpzhttps://httpwg.org/specsz1.5r   c                ó>   € RV n         \        P                  ! WV4      # )zReset the content-type state.N)Úcontent_typer   Úget_tokens_unprocessed)ÚselfÚtextÚstacks   &&&r8   rG   Ú HttpLexer.get_tokens_unprocessed€   s   € à ˆÔÜ×0Ò0°¸UÓCÐCr7   c              #  óò  "  € VP                  ^4      P                  4       R8X  dO   VP                  ^4      P                  4       pRV9   d#   VRVP                  R4       P                  4       pW n        VP                  ^4      \        P                  VP                  ^4      3x € VP                  ^4      \        VP                  ^4      3x € VP                  ^4      \        VP                  ^4      3x € VP                  ^4      \        VP                  ^4      3x € VP                  ^4      \        VP                  ^4      3x € VP                  ^4      \        VP                  ^4      3x € R# 5i)é   zcontent-typeÚ;N)ÚgroupÚlowerÚstripÚfindrF   Ústartr   r4   r   r
   r   )rH   ÚmatchrF   s   && r8   Úheader_callbackÚHttpLexer.header_callback…   s  é € Ø�;‰;�q‹>×ÑÓ! ^Ô3Ø Ÿ;™; q›>×/Ñ/Ó1ˆLØ�lÔ"Ø+Ð,C¨\×->Ñ->¸sÓ-CÐD×JÑJÓL�Ø ,ÔØ�k‰k˜!‹nœdŸn™n¨e¯k©k¸!«nÐ<Ò<Ø�k‰k˜!‹nœd E§K¡K°£NÐ2Ò2Ø�k‰k˜!‹nœh¨¯©°A«Ð6Ò6Ø�k‰k˜!‹nœd E§K¡K°£NÐ2Ò2Ø�k‰k˜!‹nœg u§{¡{°1£~Ð5Ò5Ø�k‰k˜!‹nœd E§K¡K°£NÐ2Ô2ùs   ‚E5E7c              #  ó  "  € VP                  ^4      \        VP                  ^4      3x € VP                  ^4      \        VP                  ^4      3x € VP                  ^4      \        VP                  ^4      3x € R# 5i)rM   N)rS   r   rO   r   )rH   rT   s   &&r8   Úcontinuous_header_callbackÚ$HttpLexer.continuous_header_callback’   s\   é € Ø�k‰k˜!‹nœd E§K¡K°£NÐ2Ò2Ø�k‰k˜!‹nœg u§{¡{°1£~Ð5Ò5Ø�k‰k˜!‹nœd E§K¡K°£NÐ2Ô2ùs   ‚A>B c              #  ó˜  "  € \        V R R4      pVP                  4       pVP                  4       pV'       dt   ^ RIHp V.pRV9   d*   \
        P                  ! RRV4      pVP                  V4       V F4  p V! V4      p	V	P                  V4       F  w  r«pWJ,           W¼3x € K  	   R# 	  V\        V3x € R#   \         d     KS  i ; i5i)rF   N)Úget_lexer_for_mimetypeÚ+z^(.*)/.*\+(.*)$z\1/\2)ÚgetattrrO   rS   Úpygments.lexersr[   r,   ÚsubÚappendrG   r   r   )rH   rT   rF   ÚcontentÚoffsetr[   Úpossible_lexer_mimetypesÚgeneral_typeÚiÚlexerÚidxÚtokenÚvalues   &&           r8   Úcontent_callbackÚHttpLexer.content_callback—   sÍ   é € Ü˜t ^°TÓ:ˆØ—+‘+“-ˆØ—‘“ˆßÝ>Ø(4 ~Ð$Ø�lÔ"ô  "ŸvšvÐ&8¸(Ø&2ó 4�à(×/Ñ/°Ô=ã-�ðÙ2°1Ó5�Eð .3×-IÑ-IÈ'Ö-RÑ)˜ EØ$�l¨EÐ8Ô8ñ .Sâñ .ð ”d˜GÐ#Ô#øô %ô Úðüs*   ‚A4C
Á7B8Á?9C
Â8CÃC
ÃCÃC
zL([a-zA-Z][-_a-zA-Z]+)( +)([^ ]+)( +)(HTTP)(/)(1\.[01]|2(?:\.0)?|3)(\r?\n|\Z)ÚheaderszF(HTTP)(/)(1\.[01]|2(?:\.0)?|3)( +)(\d{3})(?:( +)([^\r\n]*))?(\r?\n|\Z)z(([^\s:]+)( *)(:)( *)([^\r\n]*)(\r?\n|\Z)z([\t ]+)([^\r\n]+)(\r?\n|\Z)z\r?\nra   z.+c                óx   a € \         ;QJ d    V 3R  lR 4       F  '       g   K   R# 	  R# ! V 3R  lR 4       4      # )c              3   óV   <"  € T F  p\         P                  ! VS4      R Jx € K   	  R # 5i)N)r,   Úsearch)Ú.0ÚpatternrI   s   & €r8   Ú	<genexpr>Ú)HttpLexer.analyse_text.<locals>.<genexpr>Ç   s,   øé € ð 
ñ�ô �IŠI�g˜tÓ$¨DÕ0óùs   ƒ&)TF)zM^([a-zA-Z][-_a-zA-Z]+)( +)([^ ]+)( +)(HTTP)(/)(1\.[01]|2(?:\.0)?|3)(\r?\n|\Z)zG^(HTTP)(/)(1\.[01]|2(?:\.0)?|3)( +)(\d{3})(?:( +)([^\r\n]*))?(\r?\n|\Z))Úany©rI   s   fr8   Úanalyse_textÚHttpLexer.analyse_textÆ   sB   ø€ ß‹sô 
ñó
�sŒsð 	
Šsð 	
ˆsô 
ñó
ó 
ð 	
r7   )rF   N))r   )r!   r"   r#   r$   r%   r&   r'   r*   r+   r,   ÚDOTALLr/   rG   rU   rX   rj   r   r   ÚFunctionr   Ú	Namespacer   ÚReservedr
   r   Ú	Exceptionr5   rv   r6   Ú__classdictcell__©Ú__classdict__s   @r8   r   r   t   sù   ø‡ € ñð €DØˆh€GØ
$€CØ€Mà�I‰I€EôDò
3ò3ò
$ð4 	ð9á�d—m‘m T¨4¯>©>¸4Ø×&Ñ&¨°&¸$ó@àð	ð
 WÙ�g×&Ñ&¨°&¸$ÀÈØ—n‘n dó,àðð

ð 	Ø8¸/ÐJØ,Ð.HÐIØ�t˜YÐ'ð
ð
 	ØÐ$Ð%ð
ð#€F÷,
ð 
r7   c                   óè  € ] tR t^ÐtRtRtRtR.tRtRR.t	R.t
]t]t]P                   t]P$                  t]P(                  t]tR	tR
tRtRtR],           R,           t]R,           ],           R,           tR],           R,           ],           R,           tR]]! ]]]]4      R3]]! ]]4      R3]]! ]]]4      R3]]R3]]R3]]R3]]R3R]R3.RR]R3]]3]]3R]3R]3.RR]R3]]3]]3R]3R]3./t Rt!R# )r   z&
Lexer for Todo.txt todo list format.
ÚTodotxtzhttp://todotxt.com/Útodotxtz2.0ztodo.txtz	*.todotxtztext/x-todoz\d{4,}-\d{2}-\d{2}z	\([A-Z]\)z\+\S+z@\S+z(x )(Ú)z( )(Ú(z)( )(r   ÚcompleteÚ
incompletez\S+z\s*\nr   z\s+r    N)"r!   r"   r#   r$   r%   r&   r*   r'   r+   r(   r)   r
   ÚCompleteTaskTextr   ÚIncompleteTaskTextr   ÚHeadingÚPriorityÚ
SubheadingÚDateÚErrorÚProjectr   ÚContextÚ
date_regexÚpriority_regexÚproject_regexÚcontext_regexÚcomplete_one_date_regexÚcomplete_two_date_regexÚpriority_date_regexr   r5   r6   r    r7   r8   r   r   Ð   sÇ  † ñð €DØ
€CØˆk€GØ€Mð ˜[Ð)€IØ�€Ið  ÐØÐð �‰€Hà×Ñ€Dð �m‰m€GØ€Gð '€JØ!€NØ€MØ€Mð '¨Õ3°dÕ:ÐØ6¸Õ@Ø)õ *Ø,0õ 1Ðà Õ/°(Õ:¸ZÕGÈ$ÕNÐð 	ð %¡hÐ/?ÀØ/?Àó'Gàðð %¡hÐ/?ÀÓ&FØðð
 !¡(¨8Ð5GÈÓ"NØðð ˜X |Ð4à˜˜|Ð,à˜G \Ð2à˜G \Ð2àÐ'¨Ð6ð/
ð6 	àÐ'¨Ð0à˜GÐ$Ø˜GÐ$àÐ%Ð&àÐ%Ð&ð

ð 	àÐ)¨6Ð2à˜GÐ$Ø˜GÐ$àÐ'Ð(àÐ'Ð(ð

ðU5„Fr7   c                   ób  a € ] tR tRt o RtRtRtR.tRtR t	RR	]
R(3.RR]! ]P                  ]4      3R]! ]P                  ]P                   4      3R]! ]P                  ]4      3]! R4      .R
R]
R3R]
R3R]
R3.RR]
R3R]! ]P                  ]4      3R]! ]P&                  ]]P*                  4      3.RR]
R3R]
R)3R]
R3.RR]! ]P                  ]P                   4      3R]! ]]P                  ]4      3R]! ]]P                  ]4      3]! R4      .RR ]
R3R!]
R*3R"]3R#]	3./tR$ tR% tR&tV tR'# )+r   i4  zä
For Notmuch email text format.

Additional options accepted:

`body_lexer`
    If given, highlight the contents of the message body with the specified
    lexer, else guess it according to the body content (default: ``None``).
ÚNotmuchzhttps://notmuchmail.org/Únotmuchz2.5c              #  ó$  "  € VP                  ^4      p V P                  '       d   \        V P                  4      pM\        VP	                  4       4      p VP                  V4       Rj  x€L
  R#   \
         d    \        R4      p L3i ; i L"5i)rM   rI   N)rO   Ú
body_lexerr   r   rQ   r   rG   )rH   rT   Úcoderf   s   &&  r8   Ú_highlight_codeÚNotmuchLexer._highlight_codeD  st   é € Ø�{‰{˜1‹~ˆð	.Ø��ˆÜ)¨$¯/©/Ó:‘ä# D§J¡J£LÓ1‘ð ×/Ñ/°Ó5×5Ò5øô ô 	.Ü% fÓ-ŠEð	.úñ 	6ùs>   ‚B•'A2 ¼B½A2 ÁBÁ+BÁ,BÁ2BÂBÂ
BÂBr   z\fmessage\{\s*Úmessageúmessage-attrz(\s*id:\s*)(\S+)z&(\s*(?:depth|match|excluded):\s*)(\d+)z(\s*filename:\s*)(.+\n)r   z\fmessage\}\nz\fheader\{\nÚheaderz
\fbody\{\nÚbodyz\fheader\}\nz'((?:Subject|From|To|Cc|Date):\s*)(.*\n)z(.*)(\s*\(.*\))(\s*\(.*\)\n)z
\fpart\{\nÚpartz\f(part|attachment)\{\s*ú	part-attrz
\fbody\}\nz(ID:\s*)(\d+)z*(,\s*)((?:Filename|Content-id):\s*)([^,]+)z(,\s*)(Content-type:\s*)(.+\n)z\f(?:part|attachment)\}\nz\f(?:part|attachment)\{\s*z^Non-text part: .*\nz&(?s)(.*?(?=\f(?:part|attachment)\}\n))c                ó8   € V P                  R 4      '       d   R# R# )z	message{g      ð?g        )Ú
startswithru   s   &r8   rv   ÚNotmuchLexer.analyse_text~  s   € Ø—o‘o l×3Ò3ˆsÐ<¸Ð<r7   c                ób   € VP                  R R4      V n        \        P                  ! V 3/ VB  R# )r›   N)Úgetr›   r   Ú__init__)rH   Úoptionss   &,r8   rª   ÚNotmuchLexer.__init__�  s'   € Ø!Ÿ+™+ l°DÓ9ˆŒÜ×Ò˜DÑ, GÔ,r7   )r›   N)rŸ   r    )r£   r¤   )z#pushr¤   )r!   r"   r#   r$   r%   r&   r*   r'   r+   r�   r   r   r   r4   r   r   rA   r   r   ÚStrongr   r2   r   r	   r5   rv   rª   r6   r}   r~   s   @r8   r   r   4  sÆ  ø‡ € ñð €DØ
$€CØˆk€GØ€Mò6ð 	Ø Ð)DÐEð
ð 	Ø ¡(¨4¯>©>¸6Ó"BÐCØ6Ù�d—n‘n f§n¡nÓ5ð7à'Ù�d—n‘n fÓ-ð/á�F‹Oð
ð 	Ø˜w¨Ð/Ø˜g xÐ0Ø˜G VÐ,ð
ð
 	Ø˜g vÐ.Ø7Ù�d—n‘n fÓ-ð/à,Ù�g—n‘n g¨t¯x©xÓ8ð:ð	
ð 	Ø˜G VÐ,Ø(¨'Ð3HÐIØ˜G VÐ,ð
ð
 	Ø™x¨¯©¸¿¹ÓGÐHØ:Ù�k 4§>¡>°6Ó:ð<à.Ù�k 4§>¡>°6Ó:ð<á�F‹Oð
ð 	Ø)¨7°FÐ;Ø*¨GÐ5KÐLØ$ gÐ.Ø6¸ÐHð	
ðK+€FòZ=÷-ð -r7   c                   ó@  € ] tR tRtRtRtRR.tRR.tRtR	t	R
R]
R3R]
R3R]
R3R]
R3R]
R3R]
R3R]
R3.RR]
R3R]
R3]! R4      .RR]3R]3R]
R3.R]! R4      R]R3.R]! R4      R]
R3.R]! R4      R]P"                  R3.R]! R4      R]P$                  R3./tRtR # )!r   i†  z(
For Linux Kernel log ("dmesg") output.
z
Kernel logÚkmsgÚdmesgz*.kmsgz*.dmesgz#https://fr.wikipedia.org/wiki/Dmesgz2.6r   z^[^:]+:debug : (?=\[)Údebugz^[^:]+:info  : (?=\[)Úinfoz^[^:]+:warn  : (?=\[)Úwarnz^[^:]+:notice: (?=\[)z^[^:]+:err   : (?=\[)Úerrorz^[^:]+:crit  : (?=\[)z^(?=\[)Úunknownz(^(?=.+(warning|notice|audit|deprecated))z ^(?=.+(error|critical|fail|Bug))Úbasez\[[0-9. ]+\] z(?<=\] ).+?:z\nr   z.+\nr    N)r!   r"   r#   r$   r%   r&   r'   r(   r*   r+   r   r   r   r   r   r	   r   r­   r�   r5   r6   r    r7   r8   r   r   †  sA  † ñð €DØ�wÐ€GØ˜9Ð%€IØ
/€CØ€Mð 	Ø% t¨WÐ5Ø% t¨VÐ4Ø% t¨VÐ4Ø% t¨VÐ4Ø% t¨WÐ5Ø% t¨WÐ5Ø˜˜yÐ)ð
ð 	Ø8¸$ÀÐGØ0°$¸Ð@Ù�F‹Oð
ð
 	Ø˜vÐ&Ø˜gÐ&Ø�D˜&Ð!ð
ð
 	Ù�F‹OØ�g˜vÐ&ð
ð 	Ù�F‹OØ�d˜FÐ#ð
ð 	Ù�F‹OØ�g—n‘n fÐ-ð
ð 	Ù�F‹OØ�g—m‘m VÐ,ð
ðA$„Fr7   )r   r   r   r   r   r   )r%   r,   r^   r   r   Úpygments.lexerr   r   r   r   Úpygments.tokenr   r	   r
   r   r   r   r   r   r   r   Úpygments.utilr   Ú__all__r   r   r   r   r   r   r    r7   r8   Ú<module>r»      sƒ   ðñó 
ç :ß AÓ A÷*÷ *÷ *å 'ò-€ô>�:ô >ôB�:ô ô8Y
�
ô Y
ôxa�:ô aôHO-�:ô O-ôd.�Zö .r7   