
    $HJj'                        d Z ddlZddlmZmZmZmZmZmZ i ddddd	d
dddddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.dd/	Z	d0 Z
d1 Zed2k(  r'dd3lmZ  ej                         Z e ed4e             yy)5z<
Convert English to Hangul
https://github.com/kyubyong/g2pK
    N   )adjustcomposeto_choseongto_jungseongto_jongseongreconstructAu   에이Bu   비Cu   씨Du   디Eu   이Fu   에프Gu   지Hu	   에이치Iu   아이Ju   제이Ku   케이Lu   엘Mu   엠Nu   엔Ou   오Pu   피Qu   큐u   알u   에스u   티u   유u   브이u	   더블유u   엑스u   와이)	RSTUVWXYZc                 0    d}| D ]  }|t         |   z  } |S )N )eng2kor)wordretalphas      ^/Users/ahmed/devFolder/claude-voice/.venv/lib/python3.12/site-packages/misaki/g2pkc/english.pyword_to_hangulr+   *   s$    
Cwu~ J    c                 8   t        t        t        j                  d|                   }t	        |t
        d      D ][  }t        d|       |j                         s|j                         |vr8t        |j                               }| j                  ||      } t        ||       j|j                         }||   d   }t        |      }d}t        t        |            D ]v  }||   }	|dkD  r||dz
     nd}
|t        |      dz
  k  r||dz      nd	}|t        |      d
z
  k  r||dz      nd	}d}d}d}d}|	dv rb|
dd
 |v r|d	k(  r|t        |	      z  }u|
dd
 |v r|d   dvr|t        |	      z  }|d   dv r|t        |	      z  }|dz  }|t        |	      z  }|	dv r|t        |	      z  }|d   |v s|dz  }|	dv r`|t        |	      z  }|	dv r|d   |v s|dz  }|	dk(  r#|d   d	v r|dz  }|d   |v r|dz  }"|dz  })|	dk(  s0|d   |v s9|dz  }@|	dv r)|t        |	      z  }|d   |v s[|	dv r|dz  }f|dz  }m|	dv r+|	dv r|d   |v r|t        |	      z  }|t        |	      z  }|	d k(  rd|
dk(  r|t        |	      z  }|d   d!v r|t        |	      z  }|
dv r|t        |	      z  }|d   |v r|d"z  }|dv s|d   |vs|d#z  }|	d$k(  r*|
d   |v r|d%z  }|t!        |	      z  }|d   |v s-|d&z  }4|	d'k(  r|d   |v sB|t        |	      z  }R|	d   d(v r|t!        |	      z  }i|t        |	      z  }y t#        |      }t%        |      }t        j&                  d)d|      }| j                  ||      } ^ | S )*u   Convert a string such that English words inside are turned into Hangul.
    string: input string.
    cmu: cmu dict object.

    >>> convert_eng("그 사람 좀 old school이야", cmu)
    그 사람 좀 올드 스쿨이야
    z	[A-Za-z]+T)keyreversez
eng_word :r   r%   r   ^$   )AEAHAXEHIHIXUHAEIOUYBCDFGHJKLMNPQRSTVWXZz$BCDFGHJKLMNPQRSTVWXZPTKN	AEIOULRMNz$BCDFGHJKLMNPQRSTVWXYZu   ᅳBDG)r   r#   r   r   THDHSHZH)r   r#   r   r   r?   r@   rA   u   ᅵu   ᅲr"   rB   )TSDZCHJH)rC   rD   )r   r   NGMNr   z$BCDFGHJKLPQRSTVWXZu   ᆯᄅu	   ᆯ르ERu   ᄋu   ᄅr   AEIOUu	   [ᄀ-ᇿ])listsetrefindallsortedlenprintisupperlowerr+   upperreplacer   ranger   r   r   r	   r   sub)stringcmu	eng_wordseng_wordr(   r'   arpabetsphonemesipp_prevp_nextp_next2short_vowelsvowels
consonantssyllable_final_or_consonantss                    r*   convert_engrg   0   s=    SK89:I9#t<<lH%(.."2#"= !12C^^Hc2F(C ~~t9Q<(#s8}%AA()AXa!e_3F()CMA,=(=Xa!e_3F)*S]Q->)>hq1uoCG FLF/J+B( Ez"1:-&C-<?*CBQZ</F1I[4P<?*CAY"::;q>)C5LC;q>)C e{1~%!9 <<5LC BB{1~%88ay$@@u$YayC'uj0us
$Yay$@@u
 //{1~%!9 <<L(uu
 &&9f!4;q>)C<?*C cS=;q>)CAY"77<?*Ct^;q>)CAY&(8OCt^
&(@;&C d!9&5LC|A&!9&5LCc!9&;q>)C 1|A& {1~%_ &b #clff&C0#.A =B Mr,   __main__)cmudictu>   오늘 학교에서 밥을 먹고 집에 와서 game을 했다)__doc__rM   utilsr   r   r   r   r   r	   r&   r+   rg   __name__nltk.corpusri   dictrY   rQ    r,   r*   <module>rp      sB  
 
 X X  	
             !" #$ 
								5<JX z#
',,.C	+VX[
\] r,   