
    11i?
                         S SK r S SKrS SKrS SKrS SKJrJr   " S S\5      rS r	S r
S rS
S jr\S	:X  a  \" 5         gg)    N)	TokenizerProfilec                       \ rS rSrSrg)ParserError	    N)__name__
__module____qualname____firstlineno____static_attributes__r       K/home/james-whalen/.local/lib/python3.13/site-packages/segments/__main__.pyr   r   	   s    r   r   c                 
   U R                   (       a>  [        R                  " U R                   5      R                  5       (       d  [	        S5      e[        [        U R                   S9" [        U 5      U R                  S95        g)zs
Tokenize a string (passed as argument or read from stdin)

segments [--profile=PATH/TO/PROFILE] tokenize [STRING]
z---profile must be a path for an existing file)profile)columnN)	r   pathlibPathexistsr   printr   _readmappingargss    r   tokenizer      sR     ||GLL6==??IJJ	)DLL
)%+dll
KLr   c                 T    [        [        R                  " [        U 5      5      5        g)zo
Create an orthography profile for a string (passed as argument or read from stdin)

segments profile [STRING]
N)r   r   	from_textr   r   s    r   r   r      s     
'

E$K
()r   c                     U R                   (       a  U R                   S   O[        R                  R                  5       n[	        U[
        5      (       d  UR                  U R                  5      nUR                  5       $ )Nr   )	r   sysstdinread
isinstancestrdecodeencodingstrip)r   strings     r   r   r   !   sM    !YYTYYq\CIINN,<Ffc""t}}-<<>r   c                    [         [        S.n[        R                  " 5         [        R
                  " SSS9nUR                  SSS9  UR                  SS	R                  U5      S9  UR                  S
[        R                  S9  UR                  SSSS9  UR                  SSS S9  UR                  SS[        R                  S9  U =(       d    UR                  5       nUR                  S:X  a~  [        UR                  5      (       ad  [        UR                  S   U;   a)  XR                  S      R                   R#                  5       OSR%                  UR                  S   5      5        OVUR                  U;  a1  [        S5        UR'                  5         [(        R*                  " S5         XR                     " U5        [(        R*                  " S5        g ! [,         aZ  n[        U5        [        XR                     R                   R#                  5       5        [(        R*                  " S5         S nANvS nAf[.         a+  n[        U5        [(        R*                  " S5         S nANS nAff = f)N)r   r   z4Main command line interface of the segments package.z@Use '%(prog)s help <cmd>' to get help about individual commands.)descriptionepilogz--verbosityzincrease output verbosity)helpcommandz | r   )nargsz
--encodingzinput encodingutf8)r+   defaultz	--profilezpath to an orthography profilez	--mappingz-column name in ortho profile to map graphemesr+   r   zInvalid command: '{}'zinvalid command@      )r   r   loggingbasicConfigargparseArgumentParseradd_argumentjoin	REMAINDERr   GRAPHEME_COL
parse_argsr,   lenr   r   __doc__r&   format
print_helpr   exitr   	Exception)parsed_argscommandsparserr   es        r   mainrE   (   s   $9H$$JQSF ,GH
	

8(<=
h&8&89
+;VL
*JTXY
<$$  &
 -&++-D||v#dii.. 	1) yy|$,,224/F/M/MdiiXYl/[	] <<x'#$HHRL	\\"4( HHQK  	!H(<<(006689HHRLL 	!HHHQKK	s%   /G 
I1$AH99I1!I,,I1__main__)N)r   r2   r   r4   segmentsr   r   r@   r   r   r   r   rE   r	   r   r   r   <module>rH      sJ    
    '	) 	M*$N zF r   