+
   -PyQc                   s6   Rvt ^ RIt^ RIHt ]! RR4       ]! RR4       ^ RIHt ^ R	IHt ^ RItR
t	/ R. RwObR. RxObR. RyObR. RzObR. R{ObR. R|ObR. R}ObR. R~ObR. RObR. RObR. RObR. RObR . RObR!. RObR#. RObR%. RObR'. ROb/ R). RObR+. RObR-. RObR/. RObR1. RObR2. RObR3. RObR5. RObR7. RObR9. RObR;. RObR=. RObR?. RObRA. RObRC. RObRD. RObRE. RObCRF. RORG. RORH. RORI. RORJ. RORK. RORL. RO/Ct
RM. ROR. ROR. RORN. RORJ. RORK. RORO. RO/tRM. ROR. ROR. RORN. RORJ. RORK. RORO. RO/tRM. ROR. ROR. RORN. RORJ. RORK. RORO. RO/tRP. RORO. RORQ. RORR. RO/tRP. RORO. RORQ. RORR. RO/tRP. RORO. RORQ. RORR. RO/tRS. RORT. RORM. ROR. ROR. RORL. RO/tRS. RORM. ROR. ROR. RORL. RO/tRS. RORT. RORM. ROR. ROR. RORL. RO/tRURRVRRWR<RXR@RYR0/t/ t/ t]! ]
P1                  4       4       F*  t]
],          ]]! ]4      &   ]
],           F  t]]]&   K
  	  K,  	  / RZRbR[R.bR\RbR]R&bR^RbR_RbR`R"bRaR6bRbR(bRcR>bRdRbReRbRfRbRgR$bRhR,bRiR*bRjR4bRkR8RlR:RmRBRnRRoRRpR<RqR@RrR0/Ct]! Rs4      t ! Rt R 4      t ! Ru R]P@                  4      t!R# )ThumbShiftKeyboardThumbShiftSegmentN)require_versionGLibz2.0IBusz1.0)r   )r   ZbaseZqZw   がZe   だZr   ごZt   ざZy   ぱZu   ぢZi   ぐZo   づZp   ぴZ@Z[Zas   じZd   でZf   げZg   ぜZh   ばZj   どk   ぎZl   ぽZ;ZzZx   びc   ずZv   ぶZb   べZn   ぷZm   ぞZ,   ぺZ.   ぼZ/12456789Z\Z:Z]03-=Z`Z^ZHZXZVZBZ>u   か゛u   き゛u   く゛u   け゛u   こ゛u   さ゛u   し゛u   す゛u   せ゛u   そ゛u   た゛u   ち゛u   つ゛u   て゛u   と゛u   は゛u   ひ゛u   ふ゛u   へ゛u   ほ゛u   は゜u   ひ゜u   ふ゜u   へ゜u   ほ゜u<   かきくけこさしすせそたちつてとはひふへほc                   s   a  ] tR t^t o R"R ltR tR tR tR tR t	R t
R	 tR
 tR tR tR tR tR 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 tR"R ltR t R"R lt!R  t"R!t#V t$R# )#r    Nc                sd   Wn         \        V n        \        V n        / V n        ^ V n        ^ V n        ^ V n        ^ V n	        ^ V n
        ^V n        RV n        RV n        V P                  4        V P                  4        V P                   R8w  d$   V P!                  4        V P#                  R4       R# R# )i    FN)_ThumbShiftKeyboard__prefstable_static_ThumbShiftKeyboard__tabler_table_static_ThumbShiftKeyboard__r_table _ThumbShiftKeyboard__shift_table_ThumbShiftKeyboard__ls_ThumbShiftKeyboard__rs_ThumbShiftKeyboard__t1_ThumbShiftKeyboard__t2_ThumbShiftKeyboard__layout"_ThumbShiftKeyboard__fmv_extension_ThumbShiftKeyboard__handakuten-_ThumbShiftKeyboard__thumb_typing_rule_method+_ThumbShiftKeyboard__init_thumb_typing_rule&_ThumbShiftKeyboard__init_layout_tablereset&_ThumbShiftKeyboard__reset_shift_table)selfprefs   &&%/usr/share/ibus-anthy/engine/thumb.py__init__ZThumbShiftKeyboard.__init__   s    #'				 !*.'%%'  "<<4JJL$$U+      c                s    V P                   pVR 8X  d
   R V n        R # VP                  RR4      pVR 8X  d   \        pW n        VP                  RR4      pV P                  VP	                  4       9  d
   R V n        R # R # Nthumb-typing-rulemethodlist)r-   r:   	get_value_THUMB_BASIC_METHODkeys)r?   r@   rG   keymaps   &   rB   Z__init_thumb_typing_ruleZ+ThumbShiftKeyboard.__init_thumb_typing_rule   ss    D=.2D+!4h?T>(F*0'!4f=**&++-?.2D+ @rD   c                s   V P                   / 8w  d   V P                   P                  4        V P                  / 8w  d   V P                  P                  4        V P                  pVR 8w  d{   V P                  pVP                  RR4      V,          pVP                  4        F?  pVP                  V4      pVP                  V4      pVR8X  d   K.  V P                  We4       KA  	  R # \        \        P                  4       4       FH  p\        V,          V P                   \        V4      &   \        V,           F  pW@P                  V&   K  	  KJ  	  R # NrF   rH    )r/   clearr1   r:   r-   rI   rK   gettyping_from_config_key"_ThumbShiftKeyboard__set_bus_tablerH   _table_table_staticord)r?   rG   r@   rL   r   valuechr      &       rB   Z__init_layout_tableZ&ThumbShiftKeyboard.__init_layout_table   s    <<2LL >>RNN  "00T>LLE__%8&A&IF[[]

111!48$$R/ # &++-('4Q'7SV$&q))A()NN1% * )rD   c                s   V P                   pVR 8X  g   \        V4      ^8w  d   R # V^ ,          R8X  d   V^,          R8X  d   V^,          R8X  d   R # W P                  \        V4      &   V F  pWP                  V&   K  	  R # NrN   )r-   lenr/   rU   r1   )r?   keyrV   r@   r      &&&  rB   Z__set_bus_tableZ"ThumbShiftKeyboard.__set_bus_table  sh    D=CJ!O8r>aB58r>!&SXA #NN1 rD   c                s   V'       d   V P                  4        R pR p	V P                  ^ 8X  d   TpTp	M+V P                  ^8X  d   TpTp	MV P                  ^8X  d   TpTp	VR 8X  g   V	R 8X  d   R # V P                  pVR 8w  d{   V P                  p
V
P	                  RR4      V,          pVP                  4        F?  pVP                  V4      pV
P                  V4      pVR8X  d   K.  V P                  W4       KA  	  R # \        V	P                  4       4       FG  pW,          V P                  \        \        V4      4      &   W,           F  pWP                  V&   K  	  KI  	  R # rM   )r<   r7   r:   r-   rI   rK   rP   rQ   rR   rH   r/   rU   Zstrr1   )r?   initZj_table_labelZj_tableZa_table_labelZa_tableZf_table_labelZf_tablerG   Z	sub_tabler@   rL   r   rV   rW   r   s   &&&&&&&&        rB   Z__reset_layout_tableZ'ThumbShiftKeyboard.__reset_layout_table  s0    $$&	==A"FI]]a"FI]]a"FIT>Y$.00T>LLE__%8&A&IF[[]

111!48$$R/ # )..*+,5LSQ[)"A()NN1% & ,rD   c           	     sF   V P                  VR \        R\        R\        4       V P                  ^ 8X  d   R# V P                  ^8  d$   V P                  RR\
        R\        R\        4       V P                  ^8  d&   V P                  RR\        R	\        R
\        4       R# R# )Znicola_j_tableZnicola_a_tableZnicola_f_tableNFZkb231_j_fmv_tableZkb231_a_fmv_tableZkb231_f_fmv_tableZkb611_j_fmv_tableZkb611_a_fmv_tableZkb611_f_fmv_table)'_ThumbShiftKeyboard__reset_layout_table_nicola_j_table_static_nicola_a_table_static_nicola_f_table_staticr8   _kb231_j_fmv_table_static_kb231_a_fmv_table_static_kb231_f_fmv_table_static_kb611_j_fmv_table_static_kb611_a_fmv_table_static_kb611_f_fmv_table_static)r?   r]   rA   rB   Z__reset_extension_tableZ*ThumbShiftKeyboard.__reset_extension_tableA  s    !!$"2"8"2"8"2"8	: 1$1$%%e&9&?&9&?&9&?A 1$%%e&9&?&9&?&9&?A %rD   c                sJ   V P                  V4       V P                  '       dc   \        \        P	                  4       4       F?  p\        V,          V P
                  \        V4      &   W P                  \        V,          &   KA  	  R # V P
                  / 8w  d   \        \        P	                  4       4       Fi  p\        V4      V P
                  9   d   V P
                  \        V4       \        V,          V P                  9   g   KQ  V P                  \        V,           Kk  	  R # R # N)*_ThumbShiftKeyboard__reset_extension_tabler9   rH   _shift_tablerK   r2   rU   r1   )r?   r]   r   s   && rB   Z__reset_shift_tableZ&ThumbShiftKeyboard.__reset_shift_table\  s    $$T*,++-.-9!_""3q6*23|A/ / 2%,++-.q6T///**3q62?dnn4|A7	 / &rD   c                s   \         P                  ! VP                  R 4      R,          4      pVP                  4       pRV9   ;'       d#    \         P                  P
                  ;'       g    ^ RV9   ;'       d#    \         P                  P                  ;'       g    ^ ,          RV9   ;'       d#    \         P                  P                  ;'       g    ^ ,          pW#3# )Z+zshift+zctrl+zalt+)r   Zkeyval_from_namesplitZlowerZModifierTypeZ
SHIFT_MASKZCONTROL_MASKZ	MOD1_MASK)r?   r   Zkeyvalstate   &&  rB   Z__s_to_key_rawZ!ThumbShiftKeyboard.__s_to_key_rawi  s    &&qwws|B'78GGIQ??4#4#4#?#?DD1A@@$"3"3"@"@EEAG1<<!2!2!<!<AAC rD   c                s   ^ pRR.p\         P                  ! RVR\         P                  P                  RR4      w  r4rVV'       g-   \	        VP                  R4      \        P                  R7       V# VP                  R4      P                  R4       F  pVP                  R4      '       d0   VP                  4       ^,          pVR8X  d   ^ pK<  VR	8X  d   ^pKG  KI  VP                  R
4      '       g   Kb  VP                  4       ^,          pVP                  R4      ^ 8  d   ^pK  VP                  R4      ^ 8  g   K  ^ pK  	  V# )a  
# Move importing Gdk into ThumbShiftKeyboard from the header
# because ibus-engine-anthy --xml does not requre to open X.
try:
    from gi.repository import Gdk
    get_default_root_window = Gdk.get_default_root_window
    property_get = Gdk.property_get
    intern = Gdk.Atom.intern
except ImportError:
    get_default_root_window = lambda : None
    property_get = lambda : None
    intern = lambda : None
except RuntimeError:
    # Do we support the engine without display?
    print >> sys.stderr, "Gdk couldn't be initialized"
    print >> sys.stderr, 'Could not open display'
    get_default_root_window = lambda : None
    property_get = lambda : None
    intern = lambda : None

root_window = get_default_root_window()
if not root_window:
    return 0
xkb_rules_names = intern('_XKB_RULES_NAMES', False)
xa_string = intern('STRING', False)
try:
    prop = property_get(root_window,
                        xkb_rules_names, xa_string,
                        0, 1024, 0)[3]
    layout_list = prop.split(' ')
except TypeError:
    print >> sys.stderr,               'This problem is fixed in the latest gobject-introspection'
    print >> sys.stderr,               'https://bugzilla.gnome.org/show_bug.cgi?id=670509'
    return 0
layout = 0
for data in layout_list:
    if data == 'jp':
        layout = 0
    elif data == 'us':
        layout = 1
    elif data.find('japan:nicola_f_bs') >= 0:
        layout = 2
    elif data.find('japan:') >= 0:
        layout = 0
return layout
Z	setxkbmapz-queryNzutf-8)ZfileZ
zlayout:ZjpZuszoptions:zjapan:nicola_f_bszjapan:)r   Z
spawn_syncZ
SpawnFlagsZSEARCH_PATH_FROM_ENVPZprintZdecodesysZstderrrl   Z
startswithZfind)	r?   layoutZargvZretZstd_outZ	std_errorZexit_statusZlineZdatas	   &        rB   Z__get_xkb_layoutZ#ThumbShiftKeyboard.__get_xkb_layoutq  s   f X&dD $ E E $d, 	/y )""7+#**=MNN7+11$7Dy))zz|A4<FT\F ",,zz|A9901Q6FYYx(A-F 8 rD   c                s   V P                   P                  R R4      p^ pV^8X  d   V P                  4       pMV P                   P                  R R4      pV P                  V4       V P                   P                  R R4      pV P	                  V4       V P                   P                  R R4      pV P                  V4       R# )thumbzkeyboard-layout-modezkeyboard-layoutzfmv-extension
handakutenN)r-   rI   #_ThumbShiftKeyboard__get_xkb_layout
set_layoutset_fmv_extensionset_handakuten)r?   Zmoderp   fmv_extensionrr   s   &    rB   Z__reset_layout_and_handakutenZ0ThumbShiftKeyboard.__reset_layout_and_handakuten  s    ||%%g/EF19**,F\\++G5FGF..wH}-\\++G\B
J'rD   c                sv   V P                   P                  R R4      pV P                  V4      w  r#VR8X  d   \        P                  pV P                  V4       V P                   P                  R R4      pV P                  V4      w  rCVR8X  d   \        P                  pV P                  V4       V P                   P                  R R4      pV P                   P                  R R4      pV P                  V4       V P                  V4       \        P                  ! V P                  \        P                  R7       R# )rq   lsi rst1t2)ZpriorityN)r-   rI   !_ThumbShiftKeyboard__s_to_key_rawr   ZKEY_Muhenkanset_lsZ
KEY_Henkanset_rsset_t1set_t2r   Zidle_add0_ThumbShiftKeyboard__reset_layout_and_handakutenZPRIORITY_LOW)r?   r   rx   rm   ry   rz   r{   s   &      rB   r=   ZThumbShiftKeyboard.reset  s    LL""7D1''*	>""BBLL""7D1''*	>BB\\##GT2\\##GT2BBd88!%!2!2	4rD   c                    V P                   # rh   r3   r?      &rB   get_lsZThumbShiftKeyboard.get_ls      yyrD   c                    Wn         R # rh   r   )r?   rx   rA   rB   r}   ZThumbShiftKeyboard.set_ls      	rD   c                r   rh   r4   r   r   rB   get_rsZThumbShiftKeyboard.get_rs  r   rD   c                r   rh   r   )r?   ry   rA   rB   r~   ZThumbShiftKeyboard.set_rs  r   rD   c                r   rh   r5   r   r   rB   get_t1ZThumbShiftKeyboard.get_t1  r   rD   c                r   rh   r   )r?   rz   rA   rB   r   ZThumbShiftKeyboard.set_t1  r   rD   c                r   rh   r6   r   r   rB   get_t2ZThumbShiftKeyboard.get_t2  r   rD   c                r   rh   r   )r?   r{   rA   rB   r   ZThumbShiftKeyboard.set_t2  r   rD   c                r   rh   )r7   r   r   rB   
get_layoutZThumbShiftKeyboard.get_layout  s    }}rD   c                Z    V P                   V8X  d   R # Wn         V P                  R4       R # NT)r7   r>   )r?   rp   rA   rB   rt   ZThumbShiftKeyboard.set_layout  s$    ==F"  &rD   c                r   rh   )r8   r   r   rB   get_fmv_extensionZ$ThumbShiftKeyboard.get_fmv_extension   s    ###rD   c                r   r   )r8   r>   )r?   rw   rA   rB   ru   Z$ThumbShiftKeyboard.set_fmv_extension  s'    =0,  &rD   c                r   rh   )r9   r   r   rB   get_handakutenZ!ThumbShiftKeyboard.get_handakuten	  s       rD   c                r   r   )r9   r>   )r?   rr   rA   rB   rv   Z!ThumbShiftKeyboard.set_handakuten  s'    
*&  &rD   c                8    V P                   P                  W4      # rh   )r/   rP   r?   r[   Zfallback   &&&rB   get_charZThumbShiftKeyboard.get_char  s    ||..rD   c                H    \        V P                  P                  4       4      # rh   )rH   r/   rK   r   r   rB   	get_charsZThumbShiftKeyboard.get_chars  s    DLL%%'((rD   c                r   rh   )r1   rP   r   r   rB   
get_r_charZThumbShiftKeyboard.get_r_char  s    ~~!!#00rD   c                r   rh   )rH   r1   rK   r   r   rB   get_r_charsZThumbShiftKeyboard.get_r_chars  s    DNN'')**rD   c                r   rh   )r2   rP   r   r   rB   get_shift_charZ!ThumbShiftKeyboard.get_shift_char  s    !!%%c44rD   c                r   rh   )rH   r2   rK   r   r   rB   get_shift_charsZ"ThumbShiftKeyboard.get_shift_chars!  s    D&&++-..rD   )Z__fmv_extensionZ__handakutenZ__layoutZ__lsZ__prefsZ	__r_tableZ__rsZ__shift_tableZ__t1Z__t2Z__tableZ__thumb_typing_rule_methodrh   )%__name__
__module____qualname____firstlineno__rC   r;   r<   rR   r^   ri   r>   r|   rs   r   r=   r   r}   r   r~   r   r   r   r   r   rt   r   ru   r   rv   r   r   r   r   r   r   __static_attributes____classdictcell__)__classdict__s   @rB   r    r       s     ,&3**	$!*FA68IV(4*'$'!'/)1+5/ /rD   c                   s   a a ] tR tRt oRtRtRt/ tRV 3R llt]	R 4       t
]	R 4       t]	R 4       tR tR tR	 tRR
 ltRtVtV ;t# )r   i%  Nc                s   < V'       gH   R Tu;8:  d   R8:  d   M M\         P                  ! V4      pMTpV P                  P                  VR4      p\        \
        V `  W4       R# )Z!Z~rN   N)segmentunichar_half_to_full_r_tablerP   Zsuperr   rC   )r?   encharsjachars	__class__s   &&&rB   rC   ZThumbShiftSegment.__init__+  sN    g$$!66w?!--++GR8/ArD   c                s   Wn         VR 8X  d
   R V n        R # VP                  RR4      pVR 8X  d   \        pW n        VP                  RR4      pV P                  VP                  4       9  d   R V n        V P                  4        R # rE   )_prefs_thumb_typing_rule_sectionrI   rJ   _thumb_typing_rule_methodrK   _init_layout_table)clsr@   rG   rL   rn   rB   INIT_THUMB_TYPING_RULEZ(ThumbShiftSegment.INIT_THUMB_TYPING_RULE4  su    
D=-1C*!4h?T>(F(.%!4f=((=,0C) rD   c                s   V P                   / 8w  d   V P                   P                  4        V P                  pVR 8w  d{   V P                  pVP	                  RR4      V,          pVP                  4        F?  pVP                  V4      pVP                  V4      pVR8X  d   K.  V P                  We4       KA  	  R # \        \        P                  4       4       F%  p\        V,           F  pW@P                   V&   K  	  K'  	  R # rM   )r   rO   r   r   rI   rK   rP   rQ   _set_bus_tablerH   rS   rT   )r   rG   r@   rL   r   rV   rW   r   rX   rB   r   Z$ThumbShiftSegment._init_layout_tableC  s    <<2LL ..T>JJE__%8&A&IF[[]

111!48""2- # &++-(&q))A&'LLO * )rD   c                s    V P                   pVR 8X  g   \        V4      ^8w  d   R # V^ ,          R8X  d   V^,          R8X  d   V^,          R8X  d   R # V F  pWP                  V&   K  	  R # rY   )r   rZ   r   )r   r[   rV   r@   r   r\   rB   r   Z ThumbShiftSegment._set_bus_tableV  sW    

D=CJ!O8r>aB58r>A!LLO rD   c                s(    V P                   \        9  # rh   )_jachars_UNFINISHED_HIRAGANAr   r   rB   is_finishedZThumbShiftSegment.is_finisheda  s    MM%9::rD   c                s   VR 8X  g   VR8X  d   . # V P                   V,           p\        P                  VR4      pV'       d;   V P                  V P                  P                  VR4      ,           V n        W0n         . # \        V4      .# ) rN   N)r   kana_voiced_consonant_rulerP   _encharsr   r   )r?   encharZtextr   rn   rB   appendZThumbShiftSegment.appendd  sp    T>Vr\I}}v%,00t< MMDMM,=,=fb,IIDM#MI!&)**rD   c                s(   VR 8X  g   VR8X  d   . # V P                   R8X  dg   ^!\        u;8:  d   ^~8:  d+   M M'Wn        \        P                  ! \        4      V n         . # V P
                  P                  VR4      V n        Wn         . # \        V4      .# )r   rN   )r   r   r   r   r   r   rP   r   )r?   r   rA   rB   prependZThumbShiftSegment.prependo  s}    T>Vr\I==Bw&$& & ' < <W E I !% 1 1&" = &I!&)**rD   c                s"    R V n         R V n        R# )rN   Nr   r   )r?   ZindexrA   rB   popZThumbShiftSegment.pop|  s    rD   r   )rN   rN   )rk   )r   r   r   r   r   Z_thumb_typing_rule_section_baser   r   rC   Zclassmethodr   r   r   r   r   r   r   r   r   Z__classcell__)r   r   s   @@rB   r   r   %  sv     F&*#!%HB ! ! ( ($ " ";	++ rD   )r    r   )u   。rN   u   ぁ)u   かr   u   え)u   たr   u   り)u   こr   u   ゃ)u   さr   u   れ)u   らu   よr	   )u   ちu   にr
   )u   くu   るr   )u   つu   まr   )u   ，u   ぇr   )   、rN   rN   )u   ゛u   ゜rN   )u   うrN   u   を)u   しr   u   あ)u   てr   u   な)u   けr   u   ゅ)u   せr   u   も)u   はu   みr   )u   とu   おr   )u   きu   のr   )u   いu   ょr   )u   んu   っrN   )u   ．rN   u   ぅ)u   ひr   u   ー)u   すr   u   ろ)u   ふr   u   や)u   へr   u   ぃ)u   めu   ぬr   )u   そu   ゆr   )u   ねu   むr   )u   ほu   わr    )u   ・u   ぉrN   )r!   rN   u   ？)r"   rN   u   ／)r#   rN   u   「)r$   rN      」)r%   u   ［rN   )r&   u   ］rN   )r'      （rN   )r(      ）rN   )   ￥rN   rN   )u   ：rN   rN   )r   rN   rN   )r)   rN   rN   )u   ＠rN   rN   )r'   rN   rN   )r(   r   rN   )r)   r   rN   )r*   rN   u   ～)r)      『rN   )r+      』rN   )r,   rN   rN   )r+   r   rN   )r,   r   rN   )u   ‘rN   rN   )   々   £rN   )r   t   ¢rN   )r   t   ¦rN   )r   rN   r   )"Z__all__ro   Zgir   Zgi_require_versionZgi.repositoryr   r   r   rJ   rT   r_   r`   ra   rb   rc   rd   re   rf   rg   rj   r.   r0   rH   rK   r   rU   r   r   Zsetr   r    ZSegmentr   ) rD   rB   <module>r      s_  2
  4 65 ! 65 !    1	1	1 	1 		1
 	1 	1 	1 	1 	1 	1 	1 	1 	1  	!1" 	#1$ 	%1& 	'1* 	+1, 	-1. 	/10 	112 	316 	718 	91: 	;1< 	=1> 	?1B 	C1D 	E1F 	G1H 	I1J 	K1N 	O1P 	Q1R 						
a1h 							  							  							  					  					  					  




 	
	  




  





   	m  "	#A(+LQ1q  
$
uu u u	
 u u u u u u u u u u u  u!" u#$ uuuuuuuu3 8 YZ E/ E/P
Z ZrD   