File: //usr/lib/python3/dist-packages/pygments/lexers/__pycache__/textfmts.cpython-38.pyc
U
G�
\i* � @ s� d Z ddlZddlmZmZ ddlmZmZmZm Z m
Z
mZmZm
Z
mZ ddlmZ dddd gZG d
d� de�ZG dd � d e�ZG dd� de�ZG d
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� e Zd ZdZdZdgZdgZdgZej ej
B ZdZde
fde d ee
jej�fde d
ee
jej�dfde d ee
jeej�fde d
ee
jeee
�fdefgdejfdedfgd�ZdS )r zD
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)�rootr N)�__name__�
__module__�__qualname__�__doc__�name�aliases� filenames� mimetypes�re�VERBOSE� MULTILINE�flagsZ timestampr r ZPreprocr ZTagr r ZInsertedr r � Attribute�tokens� r$ r$ �:/usr/lib/python3/dist-packages/pygments/lexers/textfmts.pyr s2
�
�
����c @ s� e Zd ZdZdZddgZddgZddd gZd
dej fdej
fd
ejfde
eeje�fdefde
ejee�fde
ejejejee�fgiZdS )r zE
Lexer for Gettext catalog files.
.. versionadded:: 0.9
zGettext CatalogZpotZpoz*.potz*.pozapplication/x-gettextztext/x-gettextztext/gettextr 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+)(".*")$N)r r r r r r r r r ZTypeZDeclarationr �Singler r r ZPropertyZVariabler r
ZIntegerr# r$ r$ r$ r% r U s*
�����c @ s� e Zd ZdZdZdgZejZddd�Z dd� Z
d d
� Zdd� Zd
e
ejeejeejeee�dfde
ejeeeeeeje�dfgde
fdefdedfgdefgd�Zdd� ZdS )r z=
Lexer for HTTP sessions.
.. versionadded:: 1.5
ZHTTPZhttp�r c C s d| _ t�| ||�S )zReset the content-type state.N)�content_typer �get_tokens_unprocessed)�self�text�stackr$ r$ r% r) } s z HttpLexer.get_tokens_unprocessedc c s� |� 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�fV d S ) N� zcontent-type� �;� � � � )�group�lower�strip�findr( �startr r"