[Share Experiences] 搜狗输入法ng版导入细胞词库过程的简要分析
Tofloor
poster avatar
MeGusta
deepin
2024-10-11 20:48
Author

今天有点时间,对deepin/uos上的搜狗输入法ng版导入细胞词库的行为做了一下分析。app-translate-content

研究这干嘛?搞清楚之后,就可以通过对细胞词库文件的字节码进行修改,对属性信息进行一些自定义了。

吐槽一下,写了十几分钟的帖子,因为莫名其妙的“敏感词”,把帖子吞了,然后点了保存草稿,把草稿也吞了。只好重新写过,发到博客园去了。

# 词库的偏移区间与意义:
# 有一些属性信息(词库来源,ID,时间戳),是之前在网络上没有搜索到的

词库来源:0x004-0x005(44 43为官方词库,D2 6D为用户自定义词库)
词库ID(id):0x001C-0x0026
词库生成时间戳(date):0x011C-0x011F
词库词条数量(words):0x124-0x127
词库名称(name):0x130-0x337
词库类别(type):0x338-0x53F
词库备注(remark):0x540-0xD3F
词库示例词(enumernate):0xD40-0x153F

搜狗输入法ng版会验证.scel文件的文件头,通过验证的才会添加到词库列表中。

词库导入目录在 ~/.config/cpis/sogou/p敏c感p词y/scd ,文件名为词库的ID值,

词库列表文件在 ~/.config/cpis/sogou/p敏c感p词y/scd/list.ini ,每一段词库信息的格式如下:

[15097]
id = 15097
name = 成语俗语【官方推荐】
type = 成语
remark = 官方推荐,词条来源于网友贡献!
enumernate = 各人自扫门前雪休管他人瓦上霜 拳头上立得人胳膊上走得路 即以其人之道还治其人之身 以其人之道还治其人之身 只要功夫深铁杵磨成针 知之为知之不知为不知
words = 46791
date = 1370515881
enabled = true

复现输入法操作的bash脚本:parse_scel.zip

更详细的内容请看 博文

image.png

Reply Favorite View the author
All Replies
世事大梦一场
deepin
2024-10-11 21:01
#1

辛勤耕耘的作者啊!

看到你这篇文章,越发觉得自己的搜狗输入法就是一坨。

寻思着如何让他把我常用的词语放到前头,看了你这篇文章,马上就去下载了几个词库,现在用起来好多了。

Reply View the author
晚秋(lateautumn)
Moderator
2024-10-11 21:53
#2

学习了,谢谢分享。applaud

Reply View the author
Oli
deepin
2024-10-12 04:25
#3

like like 我也学习了 感谢分享

Reply View the author
刘大壵
deepin
2024-10-12 09:32
#4

用rim,用fcitx5+云拼音+搜狗词库不香吗

Reply View the author
hinata
deepin
2024-10-13 00:55
#5

like like

Reply View the author
明月夜
deepin
2024-10-14 23:18
#6

学到啦

Reply View the author
小鱼贝壳
deepin
2024-10-20 06:37
#7

like like

Reply View the author
小鱼贝壳
deepin
2024-10-20 06:37
#8

感谢

Reply View the author