
    Wh5                    h    d Z ddlmZ ddlmZ ddlZddlmZ ddlm	Z	 ddl
mZmZ dddZ	 dddZdS )z io on the clipboard     )annotations)StringION)find_stack_level)ABCDataFrame)
get_optionoption_context\s+sepstrc                   |                     dd          }|;|                                                    dd          dk    rt          d          dd	lm} dd
lm}  |            }	 |                    |	                    d          pt          d                    }n# t          $ r Y nw xY w|dd                             d          dd         dd         }d |D             }t          |          dk    rt          |          dk    r|                                 dk    rvd} t          |d                   t          |d                             d                    z
  }|dk    r0|                    dt!          t#          |                               | |	                    d          d} t          |           dk    r|	                    d          d|d<   nNt          |           dk    r;|	                    d          dk    r"t%          j        dt)                                  |t+          |          fd| i|S )aj  
    Read text from clipboard and pass to read_csv.

    Parameters
    ----------
    sep : str, default '\s+'
        A string or regex delimiter. The default of '\s+' denotes
        one or more whitespace characters.

    **kwargs
        See read_csv for the full argument list.

    Returns
    -------
    DataFrame
        A parsed DataFrame object.
    encodingutf-8N- utf8z3reading from clipboard only supports utf-8 encodingr   )clipboard_get)read_csvzdisplay.encodingi'  

   c                ^    h | ]*}|                     d                               d          +S ) 	)lstripcount).0xs     Z/var/www/html/movieo_spanner_bot/venv/lib/python3.11/site-packages/pandas/io/clipboards.py	<setcomp>z!read_clipboard.<locals>.<setcomp>A   s0    777Aahhsmm!!$''777       r   z 		index_coldelim_whitespacer	   enginepythonczIread_clipboard with regex separator does not work properly with c engine.
stacklevelr
   )poplowerreplaceNotImplementedErrorpandas.io.clipboardr   pandas.io.parsersr   decodegetr   AttributeErrorsplitlenr   
setdefaultlistrangewarningswarnr   r   )	r
   kwargsr   r   r   textlinescountsindex_lengths	            r   read_clipboardr>      sh   $ zz*g..H  0 0 8 8b A AV K K!"WXXX111111******=??D{{6::j11SZ@R5S5STT    %Lt$$SbS)#2#.E 87777F
5zzA~~#f++**vzz||q/@/@ 58}}s58??5+A+A'B'BB1k4l0C0C+D+DEEE {vzz"455= 3xx!||

8,,4#x	SA&**X..#55W'))	
 	
 	
 	

 8HTNN666v666s   +7B# #
B0/B0Texcelbool | None
str | NonereturnNonec                   |                     dd          }|;|                                                    dd          dk    rt          d          dd	lm} |d
}|rw	 |d}t                      } | j        |f|dd| |                                } ||           dS # t          $ r% t          j        dt                                 Y n(w xY w|"t          j        dt                                 t          | t                    r6t          dd          5   | j        di |}ddd           n# 1 swxY w Y   nt#          |           } ||           dS )a  
    Attempt to write text representation of object to the system clipboard
    The clipboard can be then pasted into Excel for example.

    Parameters
    ----------
    obj : the object to write to the clipboard
    excel : bool, defaults to True
            if True, use the provided separator, writing in a csv
            format for allowing easy pasting into excel.
            if False, write a string representation of the object
            to the clipboard
    sep : optional, defaults to tab
    other keywords are passed to to_csv

    Notes
    -----
    Requirements for your platform
      - Linux: xclip, or xsel (with PyQt4 modules)
      - Windows:
      - OS X:
    r   r   Nr   r   r   z&clipboard only supports utf-8 encodingr   )clipboard_setTr   )r
   r   zAto_clipboard in excel mode requires a single character separator.r'   z7to_clipboard with excel=False ignores the sep argument.zdisplay.max_colwidth )r)   r*   r+   
ValueErrorr-   rE   r   to_csvgetvalue	TypeErrorr7   r8   r   
isinstancer   r   	to_stringr   )	objr?   r
   r9   r   rE   bufr:   objstrs	            r   to_clipboardrP   [   s   2 zz*g..H  0 0 8 8b A AV K KABBB111111} 
	{**C CJs@g@@@@@<<>>DM$F 	 	 	MS+--     	
 
E'))	
 	
 	
 	

 #|$$ 2D99 	- 	-"S],,V,,F	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- SM&s%   !AB% %,CC D::D>D>)r	   )r
   r   )TN)r?   r@   r
   rA   rB   rC   )__doc__
__future__r   ior   r7   pandas.util._exceptionsr   pandas.core.dtypes.genericr   pandasr   r   r>   rP   rF   r    r   <module>rW      s      " " " " " "        4 4 4 4 4 4 3 3 3 3 3 3       G7 G7 G7 G7 G7V 7;A A A A A A Ar    