Your IP : 18.118.120.13


Current Path : /lib64/python3.8/__pycache__/
Upload File :
Current File : //lib64/python3.8/__pycache__/textwrap.cpython-38.opt-2.pyc

U

e5d�K�@s�ddlZddddddgZdZGd	d�d�Zddd�Zddd�Zd
d�Ze�dej�Z	e�dej�Z
dd�Zddd�Ze
dkr�eed��dS)�N�TextWrapper�wrap�fill�dedent�indent�shortenz	

 c
@s�eZdZiZed�ZeD]Zeeee�<qdZdZ	de
�e�Zdedd�Z
e
�dee	ee
d	�e
j�Z[[	[
e
�d
e�Z[e
�d�Zd%ddd�dd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�ZdS)&r� z[\w!"\'&.,?]z[^\d\W]z[%s]z[^�Na�
        ( # any whitespace
          %(ws)s+
        | # em-dash between words
          (?<=%(wp)s) -{2,} (?=\w)
        | # word, possibly hyphenated
          %(nws)s+? (?:
            # hyphenated word
              -(?: (?<=%(lt)s{2}-) | (?<=%(lt)s-%(lt)s-))
              (?= %(lt)s -? %(lt)s)
            | # end of word
              (?=%(ws)s|\Z)
            | # em-dash
              (?<=%(wp)s) (?=-{2,}\w)
            )
        ))Zwp�ltZwsZnwsz(%s+)z[a-z][\.\!\?][\"\']?\Z�F�TF�z [...])�	max_lines�placeholderc
CsL||_||_||_||_||_||_||_||_|	|_|
|_	||_
||_dS�N)�width�initial_indent�subsequent_indent�expand_tabs�replace_whitespace�fix_sentence_endings�break_long_words�drop_whitespace�break_on_hyphens�tabsizerr)
�selfrrrrrrrrrrrr�r� /usr/lib64/python3.8/textwrap.py�__init__sszTextWrapper.__init__cCs(|jr|�|j�}|jr$|�|j�}|Sr)r�
expandtabsrr�	translate�unicode_whitespace_trans�r�textrrr�_munge_whitespace�s
zTextWrapper._munge_whitespacecCs6|jdkr|j�|�}n|j�|�}dd�|D�}|S)NTcSsg|]}|r|�qSrr)�.0�crrr�
<listcomp>�sz&TextWrapper._split.<locals>.<listcomp>)r�
wordsep_re�split�wordsep_simple_re�rr#�chunksrrr�_split�s

zTextWrapper._splitcCs\d}|jj}|t|�dkrX||ddkrN|||�rNd||d<|d7}q|d7}qdS)Nrr	rz  �)�sentence_end_re�search�len)rr,�iZ	patsearchrrr�_fix_sentence_endings�s	
z!TextWrapper._fix_sentence_endingscCs^|dkrd}n||}|jrH|�|dd|��|d|d�|d<n|sZ|�|���dS)Nr	���)r�append�pop)rZreversed_chunks�cur_line�cur_lenrZ
space_leftrrr�_handle_long_word�s
zTextWrapper._handle_long_wordc	Cs�g}|jdkrtd|j��|jdk	rb|jdkr8|j}n|j}t|�t|j���|jkrbtd��|��|�r�g}d}|r�|j}n|j}|jt|�}|j	r�|d�
�dkr�|r�|d=|r�t|d�}|||kr�|�|���||7}q�q�q�|�r&t|d�|k�r&|�
||||�ttt|��}|j	�r\|�r\|d�
�dk�r\|t|d�8}|d=|rj|jdk�s�t|�d|jk�s�|�r�|j	�r�t|�dk�r�|d�
��s�||k�r�|�|d�|��qj|�r0|d�
��r|t|j�|k�r|�|j�|�|d�|���q�|t|d�8}|d=�q�|�rn|d��}t|�t|j�|jk�rn||j|d<�q�|�||j����q�qj|S)Nrzinvalid width %r (must be > 0)r	z#placeholder too large for max widthr4r)r�
ValueErrorrrrr1r�lstrip�reverser�stripr5r6r9�sum�map�join�rstrip)	rr,�linesrr7r8r�lZ	prev_linerrr�_wrap_chunks�s�




 ���
�
���
�zTextWrapper._wrap_chunkscCs|�|�}|�|�Sr)r$r-r"rrr�
_split_chunksPs
zTextWrapper._split_chunkscCs$|�|�}|jr|�|�|�|�Sr)rErr3rDr+rrrrVs	

zTextWrapper.wrapcCsd�|�|��S)N�
)r@rr"rrrrdszTextWrapper.fill)
rrrTTFTTTr
)�__name__�
__module__�__qualname__r!�ordZuspace�_whitespace�xZ
word_punctZletter�re�escapeZ
whitespaceZnowhitespace�compile�VERBOSEr(r*r/rr$r-r3r9rDrErrrrrrrsT1���
��!grcKstfd|i|��}|�|�S�Nr)rr�r#r�kwargs�wrrrrps
cKstfd|i|��}|�|�SrQ)rrrRrrrr}s	cKs,tf|dd�|��}|�d�|������S)Nr	)rrr)rrr@r=r)rRrrrr�sz^[ 	]+$z(^[ 	]*)(?:[^ 	
])cCs�d}t�d|�}t�|�}|D]b}|dkr0|}q|�|�r<q|�|�rL|}qtt||��D]$\}\}}||krZ|d|�}qqZqdr�|r�|�d�D]}q�|r�t�d|d|�}|S)NrrrFz(?m)^)	�_whitespace_only_re�sub�_leading_whitespace_re�findall�
startswith�	enumerate�zipr)rM)r#Zmargin�indentsrr2rL�y�linerrrr�s(


cs,�dkrdd�����fdd�}d�|��S)NcSs|��Sr)r=�r^rrr�	predicate�szindent.<locals>.predicatec3s*��d�D]}�|�r�|n|Vq
dS)NT)�
splitlinesr_�r`�prefixr#rr�prefixed_lines�szindent.<locals>.prefixed_linesr)r@)r#rcr`rdrrbrr�s�__main__z Hello there.
  This is indented.)r)r)N)rM�__all__rKrrrrrO�	MULTILINErUrWrrrG�printrrrr�<module>sa

3


?>