+
   N"\c                   s   ^ RI t ^ RIt^ RIt^ RIHt / t]! ^ ^4       F8  t]! ]4      P                  4       '       d   K!  ]! ]4      ]]! ]! ]4      4      &   K:  	  / t
]! ^
4       F  t]! ]4      ]
]! ]! ]4      4      &   K  	  RRRRRRR	R
/t/ tRRRRRR/]^ &   RRRRRR/]^&   RRRRRR/]^&   RRRRRR/]^&   ]! ]! ^4      4      w  ttt ! R R4      tR# )    N)unichar_half_to_fullu   。u   ．u   、u   ，u   ｡Z.u   ､Z,u   「u   」u   ／u   ・u   ［u   ］c                   s   a  ] tR t^3t o Rt]tRtRt]R3R lt	]
R 4       t]
R 4       t]
R 4       tR tR	 tR
 tR tR tR tR tR tR tR tR tRR ltRR ltRR ltR tR tR tR tRt V t!R# )JaStringNFTc                s    V P                  V4       V\        8X  d"   \        P                  P	                  V4       R # R # N)
_init_modeTYPING_MODE_ROMAJIromajiRomajiSegmentSET_LATIN_WITH_SHIFT)selfmodeZlatin_with_shifts   &&&(/usr/share/ibus-anthy/engine/jastring.py__init__ZJaString.__init__9   s1    %%  556FG &    c                s   Wn         R V n        R V n        ^ V n        \	        4       V n        V\        8X  d,   \        P                  P                  V P                  4       R# V\        8X  d,   \        P                  P                  V P                  4       R# V\        8X  d,   \         P"                  P%                  V P                  4       R# R# )FN)_mode_shift_unshift_JaString__cursorlist_JaString__segmentsr   r   r   ZINIT_ROMAJI_TYPING_RULE_prefsTYPING_MODE_KANAkanaKanaSegmentZINIT_KANA_TYPING_RULETYPING_MODE_THUMB_SHIFTthumbThumbShiftSegmentZINIT_THUMB_TYPING_RULE)clsr
      &&r   r   ZJaString._init_mode>   s    	
%%  88D%%223::>,,##::3::F -r   c                    Wn         R # r   )r   )r   prefsr   r   	SET_PREFSZJaString.SET_PREFSL   s    
r   c                s    Wn         VR 8X  d8   \        p\        P                  P	                  WW44       V P                  V4       VR8X  d+   VR8X  d"   \        P                  P                  V4       R# R# R# )zkana-typing-rulecommonzlatin-with-shiftN)	r   r   r   r   RESETr   r   r   r   )r   r   ZsectionZkeyZvaluer
   s   &&&&& r   r!   ZJaString.RESETP   sc    
((#D""53>NN4 h3*<#<  55e< $=r   c                r   r   )r   )r	   Zshiftr   r   	set_shiftZJaString.set_shiftZ   s    r   c                sV    V'       d!   V P                   \        8X  d
   R V n        R# R# R# )TN)r   r   r   )r	   r
   r   r   set_hiragana_katakanaZJaString.set_hiragana_katakana]   s    DJJ"44 DM 54r   c                s   R pR pR pV P                   ^8  d%   V P                  V P                   ^,
          ,          pV P                   \        V P                  4      8  d   V P                  V P                   ,          pV'       dx   VP                  4       '       gb   \	        V4      \
        P                  8X  d1   VP                  VV P                  V P                  4      pRV n	        EMBVP                  V4      pEM/V'       dv   VP                  4       '       g`   \	        V4      \
        P                  8X  d0   VP                  VV P                  V P                  4      pRV n	        MVP                  V4      pMVR8w  d   VR8w  d   V P                  \        8X  d7   \
        P                  ! VRV P                  V P                  4      .pRV n	        MYV P                  \        8X  d   \        P                  ! V4      .pM,V P                  \         8X  d   \"        P$                  ! V4      .pV'       dG   W@P                  V P                   V P                   % V ;P                   \        V4      ,          un         R # R # )NFZ  )r   r   lenZis_finishedtyper   r   Zappendr   r   Zprependr   r   r   r   r   r   r   r   )r	   cZsegment_beforeZsegment_afterZnew_segmentss   &&   r   insertZJaString.inserta   s   ==A!__T]]Q->?N==3t// OODMM:M."<"<">">N#v';';;-44Q59[[59]] D !&-44Q7=#<#<#>#>M"f&:&::,44Q59[[59]] D !&,44Q7DyQ"W::!33$*$8$89;9=9=%H $IL %*DMZZ#33$($4$4Q$7#8LZZ#::$)$;$;A$>#?L;GOODMM$--8MMS..M r   c                s    V P                   ^,
          pV^ 8  dO   V P                  V,          pVP                  4        VP                  4       '       d   V P                  V Wn         R# R# )   TF)r   r   popis_emptyr	   Zindexsegment   &  r   remove_beforeZJaString.remove_before   sT    !A:ooe,GKKM!!OOE* %r   c                s    V P                   pV\        V P                  4      8  dI   V P                  V,          pVP                  4        VP	                  4       '       d   V P                  V R # R# )TF)r   r%   r   r*   r+   r,   r.   r   remove_afterZJaString.remove_after   sT    3t''ooe,GKKM!!OOE*r   c                s    R # r    )r	   r&   r   r   
get_stringZJaString.get_string   s    r   c                s    V ;P                   V,          un         V P                   ^ 8  d
   ^ V n         R# V P                   \        V P                  4      8  d   \        V P                  4      V n         R# R# r    N)r   r%   r   )r	   deltar   r   move_cursorZJaString.move_cursor   sM    ==1DM]]S110DM 2r   c                r   TpV^ 8  d   V P                   \        V P                  4      8  dU   W P                   \        V P                  4      ,
          ^,           ,           p\        V P                  4      ^,
          V n         V^ 8  dt   \        V P                  V P                   ,          P	                  4       4      p\        V4      V) 8  d   R# V\        V4      ,           pV P                   ^,
          V n         Kz  R# V P                   \        V P                  4      8  d   \        V P                  4      V n         R# V^ 8  ds   \        V P                  V P                   ,          P	                  4       4      p\        V4      V8  d   R# V\        V4      ,
          pV P                   ^,           V n         Ky  R# r3   )r   r%   r   strto_hiraganar	   Zlengthr4   Ztext   &&  r   move_cursor_hiragana_lengthZ$JaString.move_cursor_hiragana_length   5   19}}DOO 44T__1E!E!IJ #DOO 4q 8!)4??4==9EEGHt9v%D	) $ 1  }}DOO 44 #DOO 4!)4??4==9EEGHt9u$D	) $ 1 r   c                r6   r3   )r   r%   r   r7   Zto_katanakar9   r:   r   move_cursor_katakana_lengthZ$JaString.move_cursor_katakana_length   r<   r   c                r6   r3   )r   r%   r   r7   to_half_width_katakanar9   r:   r   %move_cursor_half_with_katakana_lengthZ.JaString.move_cursor_half_with_katakana_length   s5   19}}DOO 44T__1E!E!IJ #DOO 4q 8!)4??4==9PPRSt9v%D	) $ 1  }}DOO 44 #DOO 4!)4??4==9PPRSt9u$D	) $ 1 r   c                s<   V P                   P                  R R4      pV P                   P                  R R4      pV P                   P                  R R4      pV P                   P                  R R4      pRpV F  pV'       g   TM\        P                  Ww4      pV P                  \
        8w  d'   V'       g   TM\        V,          P                  Ww4      pV'       g   TM\        P                  Ww4      pV'       g   TM\        P                  Ww4      pWg,          pK  	  V# )r    zperiod-stylezsymbol-stylezhalf-width-symbolzhalf-width-numberr$   )	r   Z	get_valuePeriodTableZgetr   r   SymbolTableHalfSymbolTableHalfNumberTable)r	   sZperiodZsymbolZhalf_symbolZhalf_numberZretr'   s   &&      r   	_chk_textZJaString._chk_text   s    &&x@&&x@kk++H6IJkk++H6IJA[__Q%:Azz44#AV)<)@)@)F$/*=*=a*CA$/*=*=a*CAHC  
r   c           
     6  a R  pV3R lpV! RP                  \        W P                  RV P                   4      4      4      pV! RP                  \        W P                  V P                  R 4      4      4      pV P	                  WE,           4      \        V4      3# )c                 "    V P                  4       # r   )r8   rD      &r   <lambda>'JaString.get_hiragana.<locals>.<lambda>  
    r   c                 D   < S'       d   V RR R8X  g   V # V RR R,           # )r)   Nnu   んr1   rD   commit   &r   rJ   rK     %    1RS6S=aMq"v~Mr   r$   Njoinmapr   r   rE   r%   r	   rQ   convZRtext_before
text_after   &f    r   get_hiraganaZJaString.get_hiragana  w    (MD//.4==*I JKLrwws4)HIJK
~~k67[9IIIr   c           
     rF   )c                 rG   r   )Zto_katakanarH   rI   r   rJ   'JaString.get_katakana.<locals>.<lambda>  rL   r   c                 rM   )r)   NrN   u   ンrO   r1   rP   rR   r   rJ   r^     rS   r   r$   NrT   rW   r[   r   get_katakanaZJaString.get_katakana
  r]   r   c           
     rF   )c                 rG   r   )r>   rH   rI   r   rJ   2JaString.get_half_width_katakana.<locals>.<lambda>  s    113r   c                 rM   )r)   NrN   u   ﾝrO   r1   rP   rR   r   rJ   r`     rS   r   r$   NrT   rW   r[   r   get_half_width_katakanaZ JaString.get_half_width_katakana  sw    3MD//.4==*I JKLrwws4)HIJK
~~k67[9IIIr   c                    R  pRP                  \        WP                  RV P                   4      4      pRP                  \        WP                  V P                  R 4      4      pW#,           \	        V4      3# )c                 rG   r   )to_latinrH   rI   r   rJ   Z$JaString.get_latin.<locals>.<lambda>  s
    r   r$   NrU   rV   r   r   r%   r	   rX   rY   rZ      &   r   	get_latinZJaString.get_latin  s^    %ggc$(GHIWWSt}}~'FGH
'[)999r   c                rb   )c                 rG   r   )Zto_wide_latinrH   rI   r   rJ   Z)JaString.get_wide_latin.<locals>.<lambda>  s    *r   r$   Nrd   re   rf   r   get_wide_latinZJaString.get_wide_latin  s^    *ggc$(GHIWWSt}}~'FGH
'[)999r   c                sp    \        V P                   Uu. uF  qP                  4       NK  	  up4      # u upi r   )Zallr   r+   )r	   rD   s   & r   r+   ZJaString.is_empty$  s'    $//:/QJJL/:;;:s   3c                s    ^ pRpV P                    FH  pW28  d    V# W8:  d   WEP                  4       ,          pV\        VP                  4       4      ,          pKJ  	  V# )r    r$   )r   rc   r%   r8   )r	   ZstartZendiZrrD   s   &&&   r   get_rawZJaString.get_raw'  sZ    Ax  ZZ\!Q]]_%%A ! r   )Z__cursorr   r   )F)"Z__name__Z
__module__Z__qualname__Z__firstlineno__r   r   r   r   r   r   Zclassmethodr   r   r!   r"   r#   r(   r/   r0   r2   r5   r;   r=   r?   rE   r\   r_   ra   rg   rh   r+   rj   Z__static_attributes__Z__classdictcell__)Z__classdict__s   @r   r   r   3   s     FEFH. H
 G G   = =!(/T
	12.2.2. JJJ::<	 	r   r   )r   r   r   r-   r   rB   Zrangeri   ZchrZisalnumrC   r7   r@   rA   r   r   r   r   r   r1   r   r   <module>rk      s  0    (	r3Aq6>>8;A,SV45 
 	rA47FO(Q01 
 eUE5#ucBueU;AueU;AueU;AueU;A uQx.   } }r   