HOME


Mini Shell 1.0
DIR: /usr/lib/python3/dist-packages/pygments/lexers/__pycache__/
Upload File :
Current File : //usr/lib/python3/dist-packages/pygments/lexers/__pycache__/diff.cpython-312.pyc
�

|�e����dZddlZddlmZmZmZddlmZmZm	Z	m
Z
mZmZm
Z
mZgd�ZGd�de�ZGd�d	e�ZGd
�de�Zy)z�
    pygments.lexers.diff
    ~~~~~~~~~~~~~~~~~~~~

    Lexers for diff/patch formats.

    :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
�N)�
RegexLexer�include�bygroups)�Text�Comment�Operator�Keyword�Name�Generic�Literal�
Whitespace)�	DiffLexer�DarcsPatchLexer�
WDiffLexerc
�T�eZdZdZdZddgZddgZddgZd	d
ee	e
e	�fdeeje	�fdeeje	�fd
eeje	�fdeeje	�fdeej e	�fdeej e	�fdee
e	�fgiZd�Zy)rz>
    Lexer for unified or context-style diffs or patches.
    �Diff�diff�udiffz*.diffz*.patchztext/x-diffztext/x-patch�rootz( )(.*)(\n)z
(!.*|---)(\n)z((?:< |-).*)(\n)z((?:> |\+).*)(\n)z*(@.*|\d(?:,\d+)?(?:a|c|d)\d+(?:,\d+)?)(\n)z((?:[Ii]ndex|diff).*)(\n)z	(=.*)(\n)�(.*)(\n)c�:�|dddk(ry|dddk(ry|dddk(ryy)	N�zIndex: T�zdiff �z--- g�������?�)�texts �6/usr/lib/python3/dist-packages/pygments/lexers/diff.py�analyse_textzDiffLexer.analyse_text.s:�����8�y� �����8�w������8�v����N)�__name__�
__module__�__qualname__�__doc__�name�aliases�	filenames�	mimetypesrr
rr�Strong�Deleted�Inserted�
Subheading�Heading�tokensrrrrrrs�����D��w��G��9�%�I���/�I�	�
�X�j�$�
�C�D�
�x����
�C�D�
 �(�7�?�?�J�"G�H�
!�8�G�,<�,<�j�#I�J�=���+�+�Z�8�
�*�8�G�O�O�Z�+P�Q�
�8�G�O�O�Z�@�A�
�(�4��4�5�
��F� rrc�0�eZdZdZdZdgZddgZdZdefdefd	efd
efde	ee
eeeee
jee�	fde	ee
eeeee
je�d
fdej fdej fdej fddj#e�ze	ee
ee�fdej&dfdej(dfde	ee�fg
defdedfgdedfdefged�dej&fdej&fged�dej(fdej(fgd �Zy!)"rz�
    DarcsPatchLexer is a lexer for the various versions of the darcs patch
    format.  Examples of this format are derived by commands such as
    ``darcs annotate --patch`` and ``darcs send``.

    .. versionadded:: 0.10
    zDarcs Patch�dpatchz*.dpatchz*.darcspatch)�hunk�addfile�adddir�rmfile�rmdir�move�replace�<�>z\{z\}z/(\[)((?:TAG )?)(.*)(\n)(.*)(\*\*)(\d+)(\s?)(\])z+(\[)((?:TAG )?)(.*)(\n)(.*)(\*\*)(\d+)(\s?)�commentzNew patches:zContext:zPatch bundle hash:z(\s*)(%s)(.*)(\n)�|z\+�insert�-�deleterz	[^\]].*\nz\]�#popz\nz
\[_[^_]*_]�specialTextz\[z[^\n\[]+)rr9r?r;r=N)r r!r"r#r$r%r&�DPATCH_KEYWORDSrrr	r
r
r�Daterr,�joinrr*r)rrr-rrrrr7s�����D��j�G��^�,�I�"�O�
�8��
�8��
�H��
�H��
?�
�h���z�4���l�l�J��:�
;�<�
�h���z�4���l�l�J�0�1:�
<��g�o�o�.�
�'�/�/�*�
"�G�O�O�4�
!�C�H�H�_�$=�
=���W�d�J�?�
A�
�G�$�$�h�/�
�7�?�?�H�-�
�(�4��4�5�%
�*�7�#�
�H�f�%�
�
�J��'�
�H�%�
�

�M�"�
�G�$�$�%�
�'�*�*�+�
�
�M�"�
�G�O�O�$�
�'�/�/�*�
�E'�Frrc	��eZdZdZdZdZdgZdgZgZe	je	jzZdZ
dZdZd	Zd
Ze
ej&dfeej(dfeefd
efge
ej&dfeej&dfeej&dfeej&dfeej&fd
ej&fgeej(dfe
ej(dfeej(dfeej(dfeej(fd
ej(fgd�Zy)ra

    A wdiff lexer.

    Note that:

    * It only works with normal output (without options like ``-l``).
    * If the target files contain "[-", "-]", "{+", or "+}",
      especially they are unbalanced, the lexer will get confused.

    .. versionadded:: 2.2
    �WDiffz#https://www.gnu.org/software/wdiff/�wdiffz*.wdiffz\{\+z\+\}z\[\-z\-\]z[^{}[\]+-]+�inserted�deleted�.z#pushr>)rrFrGN)r r!r"r#r$�urlr%r&r'�re�	MULTILINE�DOTALL�flags�ins_op�ins_cl�del_op�del_cl�normalrr*r)rr-rrrrrqsG��
��D�
/�C��i�G���I��I��L�L�2�9�9�$�E��F�
�F�
�F�
�F�
�F��W�%�%�z�2�
�W�_�_�i�0�
�T�N�
�4�L�	
��W�%�%�w�/�
�W�%�%�w�/�
�W�%�%�v�.�
�W�%�%�v�.�
�W�%�%�&�
�7�#�#�$�
��W�_�_�g�.�
�W�_�_�g�.�
�W�_�_�f�-�
�W�_�_�f�-�
�W�_�_�%�
�7�?�?�#�
�!�Frr)r#rJ�pygments.lexerrrr�pygments.tokenrrrr	r
rrr
�__all__rrrrrr�<module>rVsQ���
�8�8����9�� �
� �F7�j�7�t7��7r