__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

[email protected]: ~ $
�

q�g�K���SrSSKJr SSKJr SSKJr SSKJr SSKJr SSKrSSKrSSK	r	SSK
r
SSKr\RR\RR\RR\555 SSKrSrS	\S
\4Sjr"SS
\5rS
\4Sjr\"5r\R4(a�\R6(d\"S5 \R:"S5 \RR=\R65(a*\RR?\R65(d'\"S\R6-5 \R:"S5 \R6(dP\R@(a?\RRC\R@5RES5SS-\l\R6(d\"S5 \R:"S5 "SS5r#SSjr$\%S:Xa\$"5 gg)z;
Program to create sqlite databases from the table sources
�)�Tuple)�List)�Iterable)�Dict)�AnyNz 	
"$&<>,+=#!()'|{}[]?~`;%\�keyname�returnc�0�[SU55(+$)z�
Keynames must be ascii, and must not contain any invalid characters

>>> gconf_valid_keyname('nyannyan')
True

>>> gconf_valid_keyname('nyan nyan')
False

>>> gconf_valid_keyname('nyannyan[')
False

>>> gconf_valid_keyname('nyan       nyan')
False
c3�^# �UH#nU[;=(d [U5S:�v� M% g7f)�N)�_INVALID_KEYNAME_CHARS�ord)�.0�chars  �+/usr/share/ibus-table/engine/tabcreatedb.py�	<genexpr>�&gconf_valid_keyname.<locals>.<genexpr>9s-���(�&�t��1�1�D�S��Y��_�D�&�s�+-)�any)rs r�gconf_valid_keynamer)s#�� �(�&�(�(�(�(�c�F^�\rSrSrSrS\SS4U4SjjrS\4SjrSrU=r	$)	�InvalidTableName�<z,
Raised when an invalid table name is given
�namer	Nc�.>�[TU]5 Xlg�N)�super�__init__�
table_name)�selfr�	__class__s  �rr�InvalidTableName.__init__@s���
�����rc�:�SUR-S[--S-$)NzValue of NAME attribute (%s) zcannot contain any of %r zand must be all ascii)rr
)r s r�__str__�InvalidTableName.__str__Ds*��/�$�/�/�A�-�0F�F�G�)�*�	+r)r)
�__name__�
__module__�__qualname__�__firstlineno__�__doc__�strrr$�__static_attributes__�
__classcell__)r!s@rrr<s,�����S��T��+��+�+rrc	��[R"5nURSSSSSSS9 URSS	SS
SSS9 URSS
SSSSS9 URSSSSSSS9 URSSSSSSS9 URSSSSSSS9 URS S!S"S#S$S%S9 URS&S'S"S(S$S)S9 UR5$)*z Parse the command line argumentsz-nz--name�storer�u#Specifies the file name for the binary database for the IME. The default is “%(default)s”. If the file name of the database is not specified, the file name of the source file before the first “.” will be appended with “.db” and that will be used as the file name of the database.)�action�dest�default�helpz-sz--source�sourceuZSpecifies the file which contains the source of the IME. The default is “%(default)s”.z-ez--extra�extrauZSpecifies the file name for the extra words for the IME. The default is “%(default)s”.z-pz--pinyin�pinyinz//usr/share/ibus-table/data/pinyin_table.txt.bz2uLSpecifies the source file for the  pinyin. The default is “%(default)s”.z-gz--suggestion�
suggestionz)/usr/share/ibus-table/data/phrase.txt.bz2uYSpecifies the source file for the suggestion candidate. The default is “%(default)s”.z-oz--no-create-index�store_false�indexTu�Do not create an index for a database (Only for distribution purposes, a normal user should not use this flag!). The default is “%(default)s”.z-iz--create-index-only�
store_true�
only_indexFu�Only create an index for an existing database. Specifying the file name of the binary database with the -n or --name option is required when this option is used.The default is “%(default)s”.z-dz--debug�debugu=Print extra debug messages. The default is “%(default)s”.)�argparse�ArgumentParser�add_argument�
parse_args)�parsers rrArAIsa��
�
$�
$�
&�F�
����h��
��7��	9�����j��
��2��4�����i��
��2��4�����j��
�A�2��4�����n��
�;�2��4�����!��
��2��4�����#��
��2��	4�����i��
��2��4�����rzM
Please specify the file name of the database you want to create an index on!�z'
The database file '%s' does not exist.�.z.dbzC
You need to specify the file which contains the source of the IME!c�j�\rSrSr%Sr\\S'\\S'\\S'\\S'S\S\S\4Sjr	S\S	\4S
jr
Srg)
�Section�zSHelper class for parsing the sections of the tables marked
with BEGIN_* and END_*.
�patt�start�end�
in_sectionc�r�XlUR5UlUR5UlSUlg)NF)rH�striprIrJrK)r rHrIrJs    rr�Section.__init__�s(���	��[�[�]��
��9�9�;�����r�liner	c��UR(aIURUR5:XaSUlgURR	U5(aggUR
UR5:XaSUlg)zX
Returns True if the line is inside the section and matches
the pattern of the section.
FT)rKrJrMrH�matchrI)r rOs  rrQ�
Section.match�si��
�?�?��x�x�4�:�:�<�'�"'����������&�&��'�
��Z�Z�4�:�:�<�
'�"�D�O�r)rJrKrHrIN)r&r'r(r)r*r�__annotations__r+�boolrrQr,�rrrFrF�sK����I��J�	�H��� �S� �� �3� �
�#�
�$�
rrFc	�^&�S[SS4Sjn[R(d%[R"[R
5 U"S5 [R"[R
SSS9m&S	[[S[[[[[[[44S
jnS	[[S[[4SjnS	[[S[[4SjnS	[[S[[4S
jnS	[[S[[[[[44SjnS	[[S[[[[44SjnS	[[S[[[[[[44SjnS	[[S[[[[44SjnS	[[S[[[[44Sjn	S	[[S[[[[[[44U&4Sjjn
S	[[S[[[44Sjn[R(aBU"S5 U"S5 T&R5 U"S5 T&RS5 U"S5 gU"S[R-5 [ R""S5nUR%[R5n
U
(a3[&R("[RSSS9R+5nO&[)[RSS9R+5nUR-S S!5nUR/S!5nU"S"5 U"U5unnnU"S#5 [1U	"U55nUR3U"U55 U"S$5 T&R5U5 T&R7S5 U"S%5 U"U5nU"S&5 T&R9U5 T&R:R=S'5R?5S(:Xa)U"S)5 U"U5nU"S*5 T&RAU5 T&R:R=S+5R?5S(:Xa�U"S,[RB-5 UR%[RB5nU(a%[&R("[RBSSS9nO[)[RBSS9nU"S-5 U"U5nU"S.5 U"U5nU"S/5 T&REU5 T&R:R=S05R?5S(:Xa�U"S1[RF-5 UR%[RF5nU(a%[&R("[RFSSS9nO[)[RFSS9nU"S25 U"U5nU"S35 U"U5nU"S45 T&RIU5 U"S5 T&R5 T&R:R=S'5R?5S(:XGa�[RJ(Ga�U"S55 T&RS5 U"S6[RJ-5 UR%[RJ5nU(a%[&R("[RJSSS9nO[)[RJ5nU"S75 U"U5nU"S85 U
"U5nU"S9[MU5-5 0n UH,n!U ROS:RQU!S;U!S<5U!05 M. U"S=[MU 5-5 0n"UH,n#U"ROS:RQU#S;U#S<5U#05 M. U"S>[MU"5-5 U"Hn$U$U ;dMU"RSU$5 M U"S?[MU"5-5 [1U"RU55n%U"S@5 T&R9U%5 U"S5 T&R5 [RV(aU"S5 T&RS5 OU"SA5 T&RYS5 U"S5 g![a GN~f=f)BzMain program�messager	Nc�F�[R(a[U5 ggr)�_ARGSr=�print)rWs r�debug_print�main.<locals>.debug_print�s���;�;��'�N�rzProcessing Databaser0T)�filename�user_db�create_database�fc��/n/n/n/n[R"S5n[R"S5n[R"S5n[R"S5n[R"S5n	[USS5n
[USS	5n[US
S5n[U	SS
5n
UHqnURU5(aMURU5(aM3X�4X�4X�4X�44H0unnURU5(dMUR	U5  Mo Ms U(Gd0nUH�nURU5nU(dM[UR
S55S:XdM=UR
S5U;a`[UR
S55[UUR
S55:�a%UR
S5UUR
S5'M�M�UR
S5UUR
S5'M� UHnUR	U<SUU<35 M  UR5 X#-
nXU4$)N�^###.*�^[ \t]*$z
[^\t]*=[^\t]*z$([^\t]+)\t([^\t]+)\t([0-9]+)(\t.*)?$z *[^\s]+ *\t *[^\s]+ *$�BEGIN_DEFINITION�END_DEFINITION�BEGIN_TABLE�	END_TABLE�BEGIN_TABLE_EXTRA�END_TABLE_EXTRA�BEGIN_GOUCI�	END_GOUCIrC��	)�re�compilerFrQ�append�len�group�sort)r`�_attri�_table�_table_extra�_gouci�patt_com�
patt_blank�	patt_conf�
patt_table�
patt_gouci�sec_conf�	sec_table�sec_table_extra�	sec_goucirO�_sec�_list�
gouci_dict�res�keys                    r�parse_source�main.<locals>.parse_source�s
������"$�����:�:�i�(���Z�Z��,�
��J�J�/�0�	��Z�Z� G�H�
��Z�Z� :�;�
���)�+;�=����
�{�4�	�!��+�->�@����
�{�4�	��D��N�N�4�(�(�:�3C�3C�D�3I�3I�"�+�(�7�"�+�!�*�	$,�K�D�%�
�z�z�$�'�'����T�*��$,���(*,�J��� �&�&�t�,���3�3�s�y�y��|�,��1��y�y��|�z�1��s�y�y��|�,�s�:�c�i�i��l�3K�/L�L�7:�y�y��|�J�s�y�y��|�4�M�47�9�9�Q�<�
�3�9�9�Q�<�0��"���
�
��j��o�>�?�"��K�K�M������'�'rc�,�/n[R"S5n[R"S5n[R"S5n[R"S5nUH�nURU5(aMURU5(aM3URU5nU(dMMURUR	S55nUH=n	URUR	S5<SU	<SUR	S5<35 M? M� USS$)	N�^#.*rcz(.*)\t(.*)\t(.*)z[a-z]+[1-5]rCrlrm�)rnrorQ�findallrrrp)
r`�_pinyinsrxry�patt_py�patt_yinrOr��yins�yins
          r�parse_pinyin�main.<locals>.parse_pinyins��� ���:�:�g�&���Z�Z��,�
��*�*�0�1���:�:�n�-���D��N�N�4�(�(�:�3C�3C�D�3I�3I��m�m�D�)���3�#�+�+�C�I�I�a�L�9�D�#�� ���#&�9�9�Q�<��c�i�i��l�)D�E� $����{�rc��/n[R"S5n[R"S5n[R"S5nUH�nURU5(aMURU5(aM3URU5nU(dMMURS5nURS5nUR	SRXx55 M� USS$)Nr�rcz(.*)\s+(.*)rlrCz{} {})rnrorQrrrp�format)	r`�_suggestionsrxry�patt_sgrOr��phrase�freqs	         r�parse_suggestion�main.<locals>.parse_suggestion+s���"$���:�:�g�&���Z�Z��,�
��*�*�^�,���D��N�N�4�(�(�:�3C�3C�D�3I�3I��m�m�D�)���3� �Y�Y�q�\�F��9�9�Q�<�D� �'�'����v�(D�E�
��A��rc�R�/n[R"S5n[R"S5n[R"S5nUH\nURU5(aMURU5(aM3URU5(dMKURU5 M^ U$)Nrbrcz
(.*)\t(.*))rnrorQrp)r`�_extrarxry�
patt_extrarOs      r�parse_extra�main.<locals>.parse_extra:s~�����:�:�i�(���Z�Z��,�
��Z�Z�
�.�
��D��N�N�4�(�(�:�3C�3C�D�3I�3I��#�#�D�)�)��M�M�$�'��
�
rc3�~# �UH3nUR5R5up#nX2[U54v� M5 g7fr�rM�split�int)r`�pinyin_line�_zi�_pinyin�_freqs     r�
pinyin_parser�main.<locals>.pinyin_parserGs:����K�"-�"3�"3�"5�";�";�"=��C�%���U��,�,��s�;=c3�|# �UH2nUR5R5up#U[U54v� M4 g7frr�)r`�suggestion_line�_phraser�s    r�suggestion_parser�main.<locals>.suggestion_parserLs7��� �O�,�2�2�4�:�:�<�N�G��C��J�'�'� !�s�:<c��/nUH?nURS5SSup4nUS:XaSnURX4[U5S45 MA U$)Nrmr��NOSYMBOLr0r)r�rpr�)r`�phrase_listrO�xingmar�r�s      r�
phrase_parser�main.<locals>.phrase_parserQsY��79���D�#'�:�:�d�#3�B�Q�#7� �F�D���#��������D�	�1�=�>�	�
�rc3�h# �UH(nUR5R5up#X#4v� M* g7fr)rMr�)r`rO�zi�gcms    r�goucima_parser�main.<locals>.goucima_parserZs,����D��j�j�l�(�(�*�G�B��)�O��s�02c3�*# �UHXnUR5RS5up#UR5R5nUR5nX#4v� MZ g![a$ UR5RS5up#Nef=f7f)N�=z==)rMr��	Exception�lower)r`rO�attr�vals    r�attribute_parser�main.<locals>.attribute_parser_s����D�
5� �J�J�L�.�.�s�3�	���:�:�<�%�%�'�D��)�)�+�C��+�����
5� �J�J�L�.�.�t�4�	��c�
5�s'�B�!A"�8B�"+B�
B�B�Bc��>�/nUHhnUR5R5up4TRU5nU(aURXS[	U5S45 MZ[SU-5 Mj U$)Nru+No tabkeys found for “%s”, not adding.
)rMr��parse_phraserpr�rZ)r`�
extra_listrOr�r��_tabkey�dbs      �r�extra_parser�main.<locals>.extra_parserish���68�
��D��:�:�<�-�-�/�L�F��o�o�f�-�G���!�!�7�C��I�q�"A�B��D�f�L�M�
��rc�H�0nSnUH�n[R"SU5(aSnM#U(dM,[R"SU5(a OF[R"SU5nU(dMjURS5XRS5'M� S[	U54$)	u�
Returns something like

("char_prompts", "{'a': '日', 'b': '日', 'c': '金', ...}")

i.e. the attribute name "char_prompts" and as its value
the string representation of a Python dictionary.
Fz^BEGIN_CHAR_PROMPTS_DEFINITIONTz^END_CHAR_PROMPTS_DEFINITIONz(^(?P<char>[^\s]+)[\s]+(?P<prompt>[^\s]+)�promptr�char_prompts)rnrQ�searchrr�repr)r`r�rIrOrQs     r�get_char_prompts�main.<locals>.get_char_promptsts���(*�����D��x�x�9�4�@�@�������x�x�7��>�>���I�I�;�T�C�E��u�49�K�K��4I��[�[��0�1����\� 2�3�3rzOnly create IndexeszOptimizing database zCreate Indexes �mainzDone! :Dz	Load sources "%s"z.*\.bz2�rtzUTF-8)�mode�encoding)r�z
�
z	Parsing table source file z	  get attribute of IME :)z	  add attributes into DB z	  get phrases of IME :)z	  add phrases into DB �user_can_define_phrase�truez	  get goucima of IME :)z	  add goucima into DB �pinyin_modez	Load pinyin source "%s"z	Parsing pinyin source file z	Preapring pinyin entriesz	  add pinyin into DB �suggestion_modez	Load suggestion source "%s"z 	Parsing suggestion source file z	Preapring suggestion entriesz%	  add suggestion candidates into DB z!	Preparing for adding extra wordsz	Load extra words source "%s"z!	Parsing extra words source file z	Preparing extra words linesz'	  we have %d extra phrases from sourcez{}	{}rrlz!	  the len of orig_phrases is: %dz"	  the len of extra_phrases is: %dz!	  %d extra phrases will be addedz	Adding extra words into DB zlWe do not create an index on the database, you should only activate this function for distribution purposes.)-r+rYr<�os�unlinkrr��tabsqlitedb�TabSqliteDbrrrr��optimize_database�create_indexesr5rnrorQ�bz2�open�read�replacer��listrp�
update_ime�
create_tables�add_phrases�ime_properties�getr��add_goucimar7�
add_pinyinr8�add_suggestionr6rq�updater��pop�valuesr:�drop_indexes)'r[r�r�r�r�r�r�r�r�r�r�r��patt_s�_bz2s�
source_strr5�attri�table�gouci�
attributes�phrases�goucima�_bz2p�pinyin_s�pyliner7�suggestion_s�sgline�suggestions�extra_s�	extraline�
extrawords�orig_phrasesr��
extra_phrases�	extraword�extra_phrase�new_phrasesr�s'                                      @rr�r��sS����S��T�����	��I�I�e�j�j�!��%�&�	�	 �	 �%�*�*�)+�15�
7�B�B(���}�B(�!&�t�C�y�$�s�)�T�#�Y�'F�!G�B(�H���
��$�s�)��"
�H�S�M�
�d�3�i�
��x��}���c���-��#��-�8�E�#�s�C�-�4H�+I�-�
(�X�c�]�(�x��c�3�h��/H�(�
��#���4��c�3��S�6H�0I�+J���(�3�-��H�U�3��8�_�,E��
�H�S�M��h�u�S�#�X��.G��	���
�	�$�u�S�#�s�C�5G�/H�*I�	�4�H�S�M�4�e�C��H�o�4�2
����)�*��*�+�
�����%�&�
���&�!��J����%����4�5�
�Z�Z�
�
#�F��L�L����&�E���X�X��L�L�t�g�7�7;�t�v�	��%�,�,��9�>�>�@�
��#�#�F�D�1�J�
�
�
�d�
#�F��.�/�&�v�.��E�5�%��-�.��&�u�-�.�J����&�v�.�/��-�.��M�M�*�����V���+�,��E�"�G��*�+��N�N�7��	�����5�6�<�<�>�&�H��/�0� ��'���.�/�
���w��	�����]�+�1�1�3�v�=��1�E�L�L�@�A����U�\�\�*����x�x����4�'�J�H��E�L�L�7�;�H��3�4��h�'���0�1��v�&���-�.�
�
�
�f��	�����.�/�5�5�7�6�A��5��8H�8H�H�I����U�-�-�.����8�8�� � �t�g�?�L� �� � �7�4�L��7�8�!�,�/���4�5�'��/���<�=�
���+�&��&�'�����
�����6�7�=�=�?�6�I������8�9�
���&�!��4�u�{�{�B�C����U�[�[�)����h�h�u�{�{���H�G��5�;�;�'�G��8�9���(�	��3�4�!�)�,�
��>��*�o�&�	'����F����������F�1�I�!F�� O�P���8�3�|�;L�L�M��
�#�I�� � �����1��y��|�<�i�H�
J�$�	�9�C�
�<N�N�O�)�L��|�+��!�!�,�/�*�	�8�3�}�;M�M�N��=�/�/�1�2���3�4�
���{�#��*�+�
�����{�{��%�&�
���&�!��1�	2�	������
���y	�	��	�s�$b:�:
c�c�__main__)r	N)&r*�typingrrrrrr��sysr�rnr>�pathrp�dirname�abspath�__file__r�r
r+rTrr�rrArYr<rrZ�exit�exists�isfiler5�basenamer�rFr�r&rUrr�<module>rs���,������	�
�
�	������������������ 9�:�;��<��(��(��(�&+�y�+�C�C�C�J	�������:�:�
�0�	1������
�7�7�>�>�%�*�*�%�%�R�W�W�^�^�E�J�J�-G�-G�
�8�5�:�:�E�F�������z�z�e�l�l����!�!�%�,�,�/�5�5�c�:�1�=��E�E�J��z�z�	�,�-��H�H�Q�K���DF�P
�z���F�r

Filemanager

Name Type Size Permission Actions
chinese_variants.cpython-313.pyc File 434.02 KB 0644
factory.cpython-313.pyc File 5.61 KB 0644
ibus_table_location.cpython-313.pyc File 4.87 KB 0644
it_active_window.cpython-313.pyc File 13.01 KB 0644
it_sound.cpython-313.pyc File 23.38 KB 0644
it_util.cpython-313.pyc File 45.11 KB 0644
main.cpython-313.pyc File 18.03 KB 0644
tabcreatedb.cpython-313.pyc File 23.86 KB 0644
table.cpython-313.pyc File 188.3 KB 0644
tabsqlitedb.cpython-313.pyc File 68.79 KB 0644
version.cpython-313.pyc File 423 B 0644
Filemanager