← back to Atmos Game

assets/gen/.venv/lib/python3.12/site-packages/click/__pycache__/_textwrap.cpython-312.pyc

56 lines

�

c�bj~��z�ddlmZddlmZddlZddlmZddlm	Z	ddlm
Z
d
d�ZGd�d	ej�Zy)�)�annotationsN)�contextmanager�)�_ansi_re)�term_lenc���|dkryd}d}d}t|�}||krAtj||�}|�|j�}�.|dz
}|dz
}|}||k\rn||kr�A|d|S)z�Return the longest prefix of ``text`` containing at most ``n`` visible
    characters.

    ANSI escape sequences inside the prefix are kept intact and do not count
    toward the visible width. A cut is never placed inside an escape sequence.
    r�Nr)�lenr�match�end)�text�n�visible�i�cutr�ms       �f/Users/macstudio3/Projects/atmos-game/assets/gen/.venv/lib/python3.12/site-packages/click/_textwrap.py�_truncate_visiblers���	�A�v���G�	�A�
�C�

�d�)�C�
�c�'��N�N�4��#���=�����A���1���	�Q������a�<���c�'����:��c�N�eZdZdZ										dd�Zdd�Zed	d��Zd
d�Zy)�TextWrappera�``textwrap.TextWrapper`` variant that measures widths by visible
    character count.

    ANSI escape sequences embedded in chunks, indents, or the placeholder are
    excluded from the width budget. Without this, styled help text (a styled
    ``Usage:`` prefix, a colorized option name, ...) would be wrapped earlier
    than its visible length warrants and tokens would split mid-word.
    c���t||z
d�}|jr6|d}t||�}|t|�d}|j	|�||d<y|s |j	|j��yy)Nr�����)�max�break_long_wordsrr
�append�pop)	�self�reversed_chunks�cur_line�cur_len�width�
space_left�lastr�ress	         r�_handle_long_wordzTextWrapper._handle_long_word0sv������!�,�
�� � �"�2�&�D�#�D�*�5�C��s�3�x�z�"�C��O�O�C� �"%�O�B����O�O�O�/�/�1�2�rc���g}|jdkrtd|j�d���|j�o|jdkDr
|j}n|j}t|�t|jj��z|jkDrtd��|j�|�r�g}d}|r
|j}n|j}|jt|�z
}|jr|dj�dk(r|r|d=|r?t|d�}||z|kr%|j|j��||z
}nn|r�?|r>t|d�|kDr-|j||||�ttt
|��}|jr,|r*|dj�dk(r|t|d�z}|d=|�r�|j�Ot!|�dz|jks4|r-|jrKt!|�dk(r=|dj�s*||kr%|j|dj#|�z��n|r�|dj�r]|t|j�z|krB|j|j�|j|dj#|�z�		|S|t|d�z}|d=|r��|rV|dj%�}t|�t|j�z|jkr||jz|d<	|S|j||jj�z�	|S|r���|S)a�Wrap chunks counting widths in visible characters.

        Mirrors the algorithm of :meth:`textwrap.TextWrapper._wrap_chunks`
        with every width measurement routed through
        :func:`click._compat.term_len` instead of :func:`len`, so ANSI escape
        bytes in chunks, indents, or the placeholder do not inflate the count.

        .. seealso::
            :class:`textwrap.TextWrapper` in the Python standard library documentation:
            https://docs.python.org/3/library/textwrap.html#textwrap.TextWrapper

            Reference implementation in CPython:
            https://github.com/python/cpython/blob/main/Lib/textwrap.py
        rzinvalid width z (must be > 0)rz#placeholder too large for max widthrr	)r"�
ValueError�	max_lines�subsequent_indent�initial_indentr�placeholder�lstrip�reverse�drop_whitespace�striprrr&�sum�mapr
�join�rstrip)	r�chunks�lines�indentr r!r"r�	prev_lines	         r�_wrap_chunkszTextWrapper._wrap_chunksBs-�����:�:��?��~�d�j�j�^�>�J�K�K��>�>�%��~�~��!��/�/���,�,�����(�4�+;�+;�+B�+B�+D�"E�E��
�
�R� �!F�G�G������"$�H��G���/�/���,�,���J�J��&�!1�1�E��#�#��r�
�(8�(8�(:�b�(@�U��2�J���V�B�Z�(���Q�;�%�'��O�O�F�J�J�L�1��q�L�G����(�6�"�:�.��6��&�&�v�x��%�H��c�(�H�5�6���#�#��X�b�\�5G�5G�5I�R�5O��8�H�R�L�1�1���R�L���N�N�*��5�z�A�~����6�"��/�/���K�1�,� &�q�	��� 1��5�(��L�L��"�'�'�(�*;�!;�<�"�$�R�L�.�.�0� '�(�4�3C�3C�*D� D�� M�$�O�O�D�,<�,<�=�!�L�L��"�'�'�(�2C�)C�D�!���� �8�H�R�L�#9�9��$�R�L�#�!�(-�b�	�(8�(8�(:�I� (�� 3�h�t�?O�?O�6P� P�#'�:�:�!.�-6��8H�8H�,H��b�	� %������V�d�.>�.>�.E�.E�.G�%G�H����I�H�rc#��K�|j}|j}|xj|z
c_|xj|z
c_	d��||_||_y#||_||_wxYw�w)N)r+r*)rr7�old_initial_indent�old_subsequent_indents    r�extra_indentzTextWrapper.extra_indent�sk����!�0�0�� $� 6� 6�����v�%�����&�(��	;��"4�D��%:�D�"��#5�D��%:�D�"�s�AA,�A�
A,�A)�)A,c���g}t|j��D]7\}}|j}|dkDr|j}|j	|�|����9dj|�S)Nr�
)�	enumerate�
splitlinesr+r*rr3)rr
�rv�idx�liner7s      r�indent_onlyzTextWrapper.indent_only�sc��
��"�4�?�?�#4�5�I�C���(�(�F��Q�w��/�/���I�I�����'�(�
6��y�y��}�rN)
r�	list[str]r rFr!�intr"rG�return�None)r5rFrHrF)r7�strrHzcabc.Iterator[None])r
rJrHrJ)	�__name__�
__module__�__qualname__�__doc__r&r9rr=rE�rrrr&s\���3�"�3��3��	3�
�3�
�
3�$`�D�
;��
;�rr)r
rJrrGrHrJ)
�
__future__r�collections.abc�abc�cabc�textwrap�
contextlibr�_compatrrrrrOrr�<module>rWs0��"���%����6V�(�&�&�Vr