HEX
Server: Apache
System: Linux srv1.prosuiteplus.com 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: prosuiteplus (1001)
PHP: 8.3.20
Disabled: NONE
Upload Files
File: //usr/lib/python3/dist-packages/pygments/lexers/__pycache__/textfmts.cpython-38.pyc
U

G�
\i*�@s�dZddlZddlmZmZddlmZmZmZm	Z	m
Z
mZmZm
Z
mZddlmZdddd	gZGd
d�de�ZGdd	�d	e�ZGdd�de�ZGd
d�de�ZdS)z�
    pygments.lexers.textfmts
    ~~~~~~~~~~~~~~~~~~~~~~~~

    Lexers for various text formats.

    :copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
�N)�
RegexLexer�bygroups)	�Text�Comment�Operator�Keyword�Name�String�Number�Generic�Literal)�
ClassNotFound�IrcLogsLexer�TodotxtLexer�	HttpLexer�GettextLexerc
@s�eZdZdZdZdgZdgZdgZej	ej
BZdZde
fded	ee
jej�fded
ee
jej�dfdedee
jeej�fded
ee
jeee
�fdefgdejfdedfgd�ZdS)rzD
    Lexer for IRC logs in *irssi*, *xchat* or *weechat* style.
    zIRC logsZircz*.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�flagsZ	timestamprrZPreprocrZTagrrZInsertedr	r�	Attribute�tokens�r$r$�:/usr/lib/python3/dist-packages/pygments/lexers/textfmts.pyrs2
�
�
����c@s�eZdZdZdZddgZddgZddd	gZd
dej	fdej
fd
ejfde
eeje�fdefde
ejee�fde
ejejejee�fgiZdS)rzE
    Lexer for Gettext catalog files.

    .. versionadded:: 0.9
    zGettext CatalogZpotZpoz*.potz*.pozapplication/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)rrrrrrrrrZTypeZDeclarationr�Singlerr	rZPropertyZVariablerr
ZIntegerr#r$r$r$r%rUs*
�����c@s�eZdZdZdZdgZejZddd�Z	dd�Z
d	d
�Zdd�Zd
e
ejeejeejeee�dfde
ejeeeeeeje�dfgde
fdefdedfgdefgd�Zdd�ZdS)rz=
    Lexer for HTTP sessions.

    .. versionadded:: 1.5
    ZHTTPZhttp�rcCsd|_t�|||�S)zReset the content-type state.N)�content_typer�get_tokens_unprocessed)�self�text�stackr$r$r%r)}sz HttpLexer.get_tokens_unprocessedccs�|�d���dkrD|�d���}d|kr>|d|�d����}||_|�d�tj|�d�fV|�d�t|�d�fV|�d�t	|�d�fV|�d�t|�d�fV|�d�t
|�d�fV|�d�t|�d�fVdS)	N�zcontent-type��;����)�group�lower�strip�findr(�startrr"rrr)r*�matchr(r$r$r%�header_callback�szHttpLexer.header_callbackccsL|�d�t|�d�fV|�d�t|�d�fV|�d�t|�d�fVdS)Nr-r0r1)r8rr4r)r*r9r$r$r%�continuous_header_callback�sz$HttpLexer.continuous_header_callbackc
	cs�t|dd�}|��}|��}|r�ddlm}|g}d|krRt�dd|�}|�|�|D]R}z||�}	Wntk
rzYqVX|	�	|�D]\}
}}||
||fVq�dSqV|t
|fVdS)Nr(r)�get_lexer_for_mimetype�+z^(.*)/.*\+(.*)$z\1/\2)�getattrr4r8Zpygments.lexersr<r�sub�appendr
r)r)
r*r9r(�content�offsetr<Zpossible_lexer_mimetypesZgeneral_type�iZlexer�idx�token�valuer$r$r%�content_callback�s(�
zHttpLexer.content_callbackzY(GET|POST|PUT|DELETE|HEAD|OPTIONS|TRACE|PATCH)( +)([^ ]+)( +)(HTTP)(/)(1\.[01])(\r?\n|\Z)�headersz5(HTTP)(/)(1\.[01])( +)(\d{3})( +)([^\r\n]+)(\r?\n|\Z)z(([^\s:]+)( *)(:)( *)([^\r\n]+)(\r?\n|\Z)z([\t ]+)([^\r\n]+)(\r?\n|\Z)z\r?\nrAz.+)rrHrAcCs
|�d�S)N)zGET /zPOST /zPUT /zDELETE /zHEAD /z	OPTIONS /zTRACE /zPATCH /)�
startswith)r+r$r$r%�analyse_text�szHttpLexer.analyse_textN)r')rrrrrrr�DOTALLr!r)r:r;rGrrZFunctionrZ	NamespacerZReservedrr
�	Exceptionr#rJr$r$r$r%rqsD

��������c
@s*eZdZdZdZdgZddgZdgZeZ	e
Zej
ZejZejZeZdZdZd	Zd
ZdedZed
edZdededZeee	ee	e�dfeee	e�dfeeeee�dfeedfeedfeedfeedfdedfgde	dfeefeefde	fde	fgdedfeefeefdefdefgd�ZdS)rzb
    Lexer for `Todo.txt <http://todotxt.com/>`_ todo list format.

    .. versionadded:: 2.0
    ZTodotxtZtodotxtztodo.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+)rrOrPN)rrrrrrrrrZCompleteTaskTextrZIncompleteTaskTextrZHeadingZPriorityZ
SubheadingZDate�ErrorZProjectr	ZContextZ
date_regexZpriority_regexZ
project_regexZ
context_regexZcomplete_one_date_regexZcomplete_two_date_regexZpriority_date_regexrr#r$r$r$r%r�sj����
������)rrZpygments.lexerrrZpygments.tokenrrrrrr	r
rrZ
pygments.utilr
�__all__rrrrr$r$r$r%�<module>s
,?W