HEX
Server: Apache/2.4.67 (Debian)
System: Linux vps-b2547eb4 6.1.0-41-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.158-1 (2025-11-09) x86_64
User: root (0)
PHP: 8.2.31
Disabled: NONE
Upload Files
File: //lib/python3/dist-packages/pygments/lexers/__pycache__/textfmts.cpython-311.pyc
�

�E�cX;��&�dZddlZddlmZmZddlmZmZmZm	Z	ddl
mZmZm
Z
mZmZmZmZmZmZmZddlmZgd�ZGd�d	e��ZGd
�de��ZGd�d
e��ZGd�de��ZGd�de��ZGd�de��ZdS)z�
    pygments.lexers.textfmts
    ~~~~~~~~~~~~~~~~~~~~~~~~

    Lexers for various text formats.

    :copyright: Copyright 2006-2022 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�^�eZdZdZdZdgZdgZdgZej	ej
zZdZde
fdezd	zee
jej��fdezd
zee
jej��dfdezdzee
jeej��fdezd
zee
jeee
��fdefgdejfdedfgd�ZdS)rzD
    Lexer for IRC logs in *irssi*, *xchat* or *weechat* style.
    zIRC logs�ircz*.weechatlogz
text/x-irclogaf
        (
          # 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
        )?
    z^\*\*\*\*(.*)\*\*\*\*$�^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)�rootrN)�__name__�
__module__�__qualname__�__doc__�name�aliases�	filenames�	mimetypes�re�VERBOSE�	MULTILINE�flags�	timestampr
r�Preprocr
�Tagrr�Insertedrr	�	Attribute�tokens���:/usr/lib/python3/dist-packages/pygments/lexers/textfmts.pyrrs=���������D��g�G�� �I� �!�I��J���%�E��I�2'��0�
�9�_�2�
2�H�H�W�_�d�h�4W�4W�X�
�9�_� 2�2�
�X�g�o�t�x�
0�
0�%�
9��9�_� D�D��X�g�o�w��0@�
A�
A�
C�
�9�_� F�F��X�g�o�w���
@�
@�	
B�
���)
�.�D�N�+�
�d�F�#�
�/��F�F�Fr3rc��eZdZdZdZddgZddgZgd�Zdd	ej	fd
ej
fdejfde
eeje��fd
efde
ejee��fde
ejejejee��fgiZdS)rzE
    Lexer for Gettext catalog files.

    .. versionadded:: 0.9
    zGettext Catalog�pot�poz*.potz*.po)zapplication/x-gettextztext/x-gettextztext/gettextrz	^#,\s.*?$z	^#:\s.*?$z^(#|#\.\s|#\|\s|#~\s|#\s).*$z^(")([A-Za-z-]+:)(.*")$z^".*"$z0^(msgid|msgid_plural|msgstr|msgctxt)(\s+)(".*")$z^(msgstr\[)(\d)(\])(\s+)(".*")$N)r r!r"r#r$r%r&r'r�Type�Declarationr
�Singlerrr
�Property�Variabler	r�Integerr1r2r3r4rrVs���������
�D��d�m�G��&�!�I�K�K�K�I�	�
�7�<�(�
�7�.�/�
,�g�n�=�
'�
�X�f�d�m�V�
4�
4�
6�
���
@�
�X�d�m�T�6�
2�
2�
4�
/�
�X�d�m�V�^�T�]�D�&�
Q�
Q�
S�
��F�F�Fr3rc���eZdZdZdZdgZejZdd�Z	d�Z
d�Zd�Zd	e
ejeejeejeee��d
fde
ejeeeeeeje��d
fgde
fd
efdedfgdefgd�Zd�ZdS)rz=
    Lexer for HTTP sessions.

    .. versionadded:: 1.5
    �HTTP�http�rc�<�d|_tj|||��S)zReset the content-type state.N)�content_typer�get_tokens_unprocessed)�self�text�stacks   r4rDz HttpLexer.get_tokens_unprocessed~s�� ����0��t�U�C�C�Cr3c#�K�|�d�����dkra|�d�����}d|vr/|d|�d������}||_|�d��tj|�d��fV�|�d��t|�d��fV�|�d��t|�d��fV�|�d��t|�d��fV�|�d��t|�d��fV�|�d��t|�d��fV�dS)	N�zcontent-type��;����)�group�lower�strip�findrC�startr
r0r	rr)rE�matchrCs   r4�header_callbackzHttpLexer.header_callback�sq�����;�;�q�>�>���!�!�^�3�3� �;�;�q�>�>�/�/�1�1�L��l�"�"�+�,C�\�->�->�s�-C�-C�,C�D�J�J�L�L�� ,�D���k�k�!�n�n�d�n�e�k�k�!�n�n�<�<�<�<��k�k�!�n�n�d�E�K�K��N�N�2�2�2�2��k�k�!�n�n�h����A���6�6�6�6��k�k�!�n�n�d�E�K�K��N�N�2�2�2�2��k�k�!�n�n�g�u�{�{�1�~�~�5�5�5�5��k�k�!�n�n�d�E�K�K��N�N�2�2�2�2�2�2r3c#�6K�|�d��t|�d��fV�|�d��t|�d��fV�|�d��t|�d��fV�dS)NrIrLrM)rTr	rPr)rErUs  r4�continuous_header_callbackz$HttpLexer.continuous_header_callback�s������k�k�!�n�n�d�E�K�K��N�N�2�2�2�2��k�k�!�n�n�g�u�{�{�1�~�~�5�5�5�5��k�k�!�n�n�d�E�K�K��N�N�2�2�2�2�2�2r3c#�K�t|dd��}|���}|���}|r�ddlm}|g}d|vr+tjdd|��}|�|��|D]F}	||��}	|	�|��D]\}
}}||
z||fV��dS#t$rY�CwxYw|t|fV�dS)NrCr)�get_lexer_for_mimetype�+z^(.*)/.*\+(.*)$z\1/\2)�getattrrPrT�pygments.lexersrZr(�sub�appendrDrr	)
rErUrC�content�offsetrZ�possible_lexer_mimetypes�general_type�i�lexer�idx�token�values
             r4�content_callbackzHttpLexer.content_callback�s5�����t�^�T�:�:���+�+�-�-���������	�>�>�>�>�>�>�(4�~�$��l�"�"� "�v�&8�(�&2� 4� 4��(�/�/��=�=�=�-�
�
���2�2�1�5�5�E�.3�-I�-I�'�-R�-R�9�9�)��U�E�$�s�l�E�5�8�8�8�8�8��F�F��%�����D������d�G�#�#�#�#�#�#s�;B/�/
B<�;B<zm(GET|POST|PUT|DELETE|HEAD|OPTIONS|TRACE|PATCH|CONNECT)( +)([^ ]+)( +)(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?\nr`z.+)rrjr`c�,�|�d��S)N)	zGET /zPOST /zPUT /zDELETE /zHEAD /z	OPTIONS /zTRACE /zPATCH /zCONNECT ��
startswith�rFs r4�analyse_textzHttpLexer.analyse_text�s!����� O�P�P�	Pr3N)rA)r r!r"r#r$r%r(�DOTALLr+rDrVrXrirr
�Functionr	�	Namespacer�Reservedrr�	Exceptionr1ror2r3r4rrrs8���������D��h�G��I�E�D�D�D�D�
3�3�3�3�3�3�
$�$�$�69�
�X�d�m�T�4�>�4��&��&�$�@�@�
�	
�
W�
�X�g�&��&�$����n�d�,�,�
�
�

�9�/�J�
,�.H�I�
�t�Y�'�
��$�%�
�#��F�,P�P�P�P�Pr3rc
��eZdZdZdZdZdgZddgZdgZe	Z
eZe
jZe
jZe
jZeZdZd	Zd
ZdZdezd
zZedzezd
zZdezdzezd
zZeee
ee
e��dfeee
e��dfeeeee��dfeedfeedfeedfeedfdedfgde
dfeefeefde
fde
fgdedfeefeefdefdefgd�ZdS)rzI
    Lexer for Todo.txt todo list format.

    .. versionadded:: 2.0
    �Todotxtzhttp://todotxt.com/�todotxtztodo.txtz	*.todotxtztext/x-todoz\d{4,}-\d{2}-\d{2}z	\([A-Z]\)z\+\S+z@\S+z(x )(�)z( )(�(z)( )(�complete�
incompletez\S+z\s*\nrz\s+)rrzr{N)r r!r"r#r$�urlr%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_regexrr1r2r3r4rr�s����������D�
�C��k�G��[�)�I���I� ������H���D��m�G��G�'�J�!�N��M��M�'��3�d�:��6��@�)� *�,0� 1����/�(�:�Z�G�$�N��%�h�h�/?��/?��'G�'G�
�
�%�h�h�/?��&F�&F�
�
�
!�(�(�8�5G��"N�"N�
�
��X�|�4�
��|�,�
�G�\�2�
�G�\�2�
�'��6�/
�:�'��0�
�G�$�
�G�$�
�%�&�
�%�&�

��)�6�2�
�G�$�
�G�$�
�'�(�
�'�(�

�U5�5�F�F�Fr3rc
��eZdZdZdZdZdgZd�Zdedfgde	e
je��fd	e	e
je
j��fd
e	e
je��fed��gdedfd
edfdedfgdedfde	e
je��fde	ejee
j��fgdedfdedfdedfgde	e
je
j��fde	ee
je��fde	ee
je��fed��gdedfdedfdefd efgd!�Zd"�Zd#�Zd$S)%ra
    For Notmuch email text format.

    .. versionadded:: 2.5

    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``).
    �Notmuchzhttps://notmuchmail.org/�notmuchc#�&K�|�d��}	|jrt|j��}n!t|�����}n#t
$rtd��}YnwxYw|�|��Ed{V��dS)NrIrF)rP�
body_lexerrrrRrrD)rErU�coderes    r4�_highlight_codezNotmuchLexer._highlight_code?s������{�{�1�~�~��	.���
2�)�$�/�:�:���#�D�J�J�L�L�1�1�����	.�	.�	.�%�f�-�-�E�E�E�	.�����/�/��5�5�5�5�5�5�5�5�5�5�5s�=A�A3�2A3z\fmessage\{\s*)�message�message-attrz(\s*id:\s*)(\S+)z&(\s*(?:depth|match|excluded):\s*)(\d+)z(\s*filename:\s*)(.+\n)rz
\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*)r��	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#pushr�z^Non-text part: .*\nz&(?s)(.*?(?=\f(?:part|attachment)\}\n)))rr�r�r�r�r�r�c�4�|�d��rdndS)Nz	message{g�?grlrns r4rozNotmuchLexer.analyse_textys���o�o�l�3�3�<�s�s��<r3c�`�|�dd��|_tj|fi|��dS)Nr�)�getr�r�__init__)rE�optionss  r4r�zNotmuchLexer.__init__|s6��!�+�+�l�D�9�9�����D�,�,�G�,�,�,�,�,r3N)r r!r"r#r$r|r%r�rrr
r0rrr=rr�Strongrr.rr
r1ror�r2r3r4rr.s�������
�
��D�
$�C��k�G�6�6�6���)D�E�
�!�(�(�4�>�6�"B�"B�C�
6�
�X�d�n�f�n�
5�
5�
7�
'�
�X�d�n�f�
-�
-�
/��G�F�O�O�

��w��/�
�g�x�0�
�G�V�,�
��g�v�.�
7�
�X�d�n�f�
-�
-�
/�
,�
�X�g�n�g�t�x�
8�
8�
:�	
��G�V�,�
(�'�3H�I�
�G�V�,�
��x�x�����G�G�H�
:�
�X�k�4�>�6�
:�
:�
<�
.�
�X�k�4�>�6�
:�
:�
<��G�F�O�O�

�*�7�F�;�
*�G�5K�L�
$�g�.�
6��H�	
�K+�+�F�Z=�=�=�-�-�-�-�-r3rc
�.�eZdZdZdZddgZddgZdedfd	ed
fdedfd
edfdedfdedfdedfgdedfdedfed
��gde	fde
fdedfged��dedfged��dedfged��de
jdfged��de
jdfgd�ZdS)rzK
    For Linux Kernel log ("dmesg") output.

    .. versionadded:: 2.6
    z
Kernel log�kmsg�dmesgz*.kmsgz*.dmesgz^[^:]+:debug : (?=\[)�debugz^[^:]+:info  : (?=\[)�infoz^[^:]+:warn  : (?=\[)�warnz^[^:]+:notice: (?=\[)z^[^:]+:err   : (?=\[)�errorz^[^:]+:crit  : (?=\[)z^(?=\[)�unknownz(^(?=.+(warning|notice|audit|deprecated))z ^(?=.+(error|critical|fail|Bug))z
\[[0-9. ]+\] z(?<=\] ).+?:z\nr�basez.+\n)rr�r�r�r�r�r�N)r r!r"r#r$r%r&r	rrrrr
rr�r�r1r2r3r4rr�sH��������
�D��w��G��9�%�I�&�t�W�5�
%�t�V�4�
%�t�V�4�
%�t�V�4�
%�t�W�5�
%�t�W�5�
��y�)�
�9�$��G�
0�$��@��G�F�O�O�
��v�&�
�g�&�
�D�&�!�
�
�G�F�O�O�
�g�v�&�
�

�G�F�O�O�
�d�F�#�
�

�G�F�O�O�
�g�n�f�-�
�

�G�F�O�O�
�g�m�V�,�
�A$�$�F�F�Fr3r)r#r(r]rr�pygments.lexerrrrr�pygments.tokenr	r
rrr
rrrrr�
pygments.utilr�__all__rrrrrrr2r3r4�<module>r�s����
�	�	�	�:�:�:�:�:�:�:�:�A�A�A�A�A�A�A�A�A�A�A�A�*�*�*�*�*�*�*�*�*�*�*�*�*�*�*�*�*�*�*�*�*�*�*�*�'�'�'�'�'�'�-�-�-��<�<�<�<�<�:�<�<�<�~�����:����8TP�TP�TP�TP�TP�
�TP�TP�TP�nb�b�b�b�b�:�b�b�b�JP-�P-�P-�P-�P-�:�P-�P-�P-�f.�.�.�.�.�Z�.�.�.�.�.r3