8000 GitHub - pingjiang/opendict
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

pingjiang/opendict

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenDict 词典工具


收集和分析常见词典文件,解析词典文件,导出词典数据和生成词典文件。

实现的词典格式

  • Lingoes词典LD2格式的解析和导出。
  • StartDict词典编辑器。

Lingoes词典


Lingoes是一个非常小巧但是强大的词典,有很多的词典文件。但是因为其封闭的词典格式,并且没有任何详细的官方的格式说明文档,所以其它词典无法运用到Lingoes丰富的词典资源。

这里我参考了Xiaoyun Zhu分析的的lingoes-convert源代码。但是因为代码阅读起来比较困难,即便是有源代码也无法快速的了解词典的格式,所以我重新的整理了一份代码,目的在于学习Lingoes的LD2词典格式。

基本信息

  • 词典的单词和翻译是保存在压缩数据块里面,使用索引数组来保存单词或释义在数据块中的相对位置。
  • 索引表由4Byte的int数组表示,数组的每个int表示一个单词或释义的起始位置,可以通过前后两个数据计算出长度。
  • 数值使用小端序(little endian byte order)。
  • 单词和XML翻译数据使用UTF-8UTF-16LE编码。

使用SynalizeIt分析的LD2文件的结构:

LD2-Format-SynalyzeIt-Tree.png

使用SynalizeIt分析的LD2解压后文件的结构:

LD2-Inflated-Format-SynalyzeIt-Tree.png

使用方法

注意事项

LD2文件格式现在只是分析出了单词和翻译的内容,还没能完全分析完所有内容,所以还仅仅只能导出词典里面的数据,还不能编辑词典文件。后面期待作者将软件开源,能够移植到Linux和Mac上。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

0