
    2h+                     8    S SK JrJrJr  S SKrS rS rS rS rg)    )PreProcessorRegexPreProcessorSubsymbolsNc                 T    [        [        R                  S SS9R                  U 5      $ )zAdd a space after tone-modifying punctuation.

Because the `tone_marks` tokenizer case will split after a tone-modifying
punctuation mark, make sure there's whitespace after.

c                 $    SR                  U 5      $ )Nz(?<={})formatxs    U/var/www/auris/envauris/lib/python3.13/site-packages/gtts/tokenizer/pre_processors.py<lambda>tone_marks.<locals>.<lambda>   s    j//2     search_argssearch_funcrepl)r   r   
TONE_MARKSruntexts    r   
tone_marksr      s+     &&2 
c$i	r   c                 8    [        SS SS9R                  U 5      $ )zHRe-form words cut by end-of-line hyphens.

Remove "<hyphen><newline>".

-c                 $    SR                  U 5      $ )Nz{}
r   r
   s    r   r   end_of_line.<locals>.<lambda>   s    w~~a/@r    r   )r   r   r   s    r   end_of_liner      s"     %@r	c$ir   c                 r    [        [        R                  S S[        R                  S9R                  U 5      $ )a  Remove periods after an abbreviation from a list of known
abbreviations that can be spoken the same without that period. This
prevents having to handle tokenization of that period.

Note:
    Could potentially remove the ending period of a sentence.

Note:
    Abbreviations that Google Translate can't pronounce without
    (or even with) a period should be added as a word substitution with a
    :class:`PreProcessorSub` pre-processor. Ex.: 'Esq.', 'Esquire'.

c                 $    SR                  U 5      $ )Nz(?<={})(?=\.).r   r
   s    r   r   abbreviations.<locals>.<lambda>/   s    /66q9r   r   )r   r   r   flags)r   r   ABBREVIATIONSre
IGNORECASEr   r   s    r   abbreviationsr'      s2     ))9mm	
 
c$ir   c                 N    [        [        R                  S9R                  U 5      $ )zWord-for-word substitutions.)	sub_pairs)r   r   	SUB_PAIRSr   r   s    r   word_subr+   5   s    W%6%67;;DAAr   )	gtts.tokenizerr   r   r   r%   r   r   r'   r+    r   r   <module>r.      s#    F F 	,Br   