XylotrechusZ
U
��.e�
� @ sr d Z ddlmZmZmZ ddlZddlZddlmZ ddl m
Z
ddlmZ d
dd �Z
dd
d�Zedkrne� dS )a
Script which takes one or more file paths and reports on their detected
encodings
Example::
% chardetect somefile someotherfile
somefile: windows-1252 with confidence 0.5
someotherfile: ascii with confidence 1.0
If no paths are provided, it takes its input from stdin.
� )�absolute_import�print_function�unicode_literalsN)�__version__)�PY2)�UniversalDetector�stdinc C sz t � }| D ] }t|�}|�|� |jr
q,q
|�� |j}trN|�t� � d�}|d rld�
||d |d �S d�
|�S dS )z�
Return a string describing the probable encoding of a file or
list of strings.
:param lines: The lines to get the encoding of.
:type lines: Iterable of bytes
:param name: Name of file or collection of lines
:type name: str
�ignore�encodingz{0}: {1} with confidence {2}Z
confidencez{0}: no resultN)r � bytearrayZfeedZdone�close�resultr �decode�sys�getfilesystemencoding�format)�lines�name�u�liner
� r �F/usr/lib/python3.8/site-packages/pip/_vendor/chardet/cli/chardetect.py�description_of s
�r c C s� t jdd�}|jddt �d�dtr(tjntjjgd� |jdd d
�t �d� |�
| �}|jD ]*}|�� rvt
dtjd
� t
t||j�� q\dS )z�
Handles command line arguments and gets things started.
:param argv: List of arguments, as if specified on the command-line.
If None, ``sys.argv[1:]`` is used instead.
:type argv: list of str
zVTakes one or more file paths and reports their detected encodings)�description�inputz^File whose encoding we would like to determine. (default: stdin)�rb�*)�help�type�nargs�defaultz --version�versionz%(prog)s {0})�actionr! z�You are running chardetect interactively. Press CTRL-D twice at the start of a blank line to signal the end of your input. If you want help, run chardetect --help
)�fileN)�argparse�ArgumentParser�add_argumentZFileTyper r r �bufferr r �
parse_argsr �isatty�print�stderrr r )�argv�parser�args�fr r r �main6 s&