U
    9g                     @   sJ   d dl mZmZ ddgZdZddd eD Zdd	 Zed
krFe  dS )   )get_base_levelget_displayr   r   )       r   .c                 c   s   | ]}t |V  qd S )N)str).0x r
   1/tmp/pip-unpacked-wheel-g4krq8h_/bidi/__init__.py	<genexpr>   s     r   c               	   C   s2  ddl } ddl}|  }|jddddtdd |jd	d
ddddd |jddddddd |jdddddgdtdd |jdddddd |jd d!d"d#t d$ | \}}|p|j}|j|j	|j
d%}|jrt}nd&d'lm} |}|j|d< |D ]8}	||	f|}
t|
ts t|
|j}
t|
d(d) qdS )*z)Will be used to create the console scriptr   Nz-ez
--encodingencodingzutf-8zText encoding (default: utf-8))destdefaulttypehelpz-uz--upper-is-rtlupper_is_rtlF
store_truezYTreat upper case chars as strong 'R' for debugging (default: False), Ignored in Rust algo)r   r   actionr   z-dz--debugdebugz/Output to stderr steps taken with the algorithmz-bz
--base-dirbase_dirLRzOverride base direction [L|R])r   choicesr   r   r   z-rz--rustuse_rustz@Use the Rust unicode-bidi implemention instead of the Python one)r   r   r   z-vz	--versionversionzpybidi )r   r   )r   r   r   r   )r    )end)argparsesysArgumentParseradd_argumentr   VERSIONparse_known_argsstdinr   r   r   r   r   	algorithmr   
isinstancebytesdecodeprint)r   r   parseroptionsrestlinesparamsZdisplay_funcZget_display_pythonlineZdisplayr
   r
   r   main   s    	
	
   

r0   __main__N)	wrapperr   r   __all__ZVERSION_TUPLEjoinr"   r0   __name__r
   r
   r
   r   <module>   s   U