新的辞书格式 WarblerDict 【简介,预告】

对于图片词典, OCR 是在打包时进行的,OCR 得到的字符和坐标(可选)会以词条的形式存储并生成索引。若未经校对,OCR 的字符对用户不可见,可以不下载,只供搜索使用。对于后期修正或校对,使用 SDK 或者 warbler-factory 可以提取 OCR 的结果。

2 个赞

不是很懂你說的處理方式,但感覺到很強大,謝謝解惑 :slightly_smiling_face:

你们说的OCR概念不同:一个是使用OCR制作词典,一个是使用时利用OCR生成查询项

新格式会不会有数据完整性校验(checksum)特性?从各式网盘下载的东西有时候数据会损坏。

所有辞书会在首次导入和更新时自动校验

1 个赞

请问手机上支持实时修改吗?

2 个赞

实时修改的特性是面向作者提供的,并且只能在桌面端运行。另外实时修改应当在生成索引之前完成。

大家可能有些许误会,主贴中的主要特性包含了整个生态所要实现的目标,而不仅仅是词典格式本身的特性。此外也没有必要什么东西都重复造轮子,例如 OCR 完全可以交给专业的软件完成,然后导入即可。

Warbler 生态圈主要包括下面几个模块:

  • warbler-factory: 辞书制作、修订、索引、打包、发布的核心工具集,主要面向命令行和会编写脚本的制作者。
  • warbler-wizard:辞书制作、索引、打包的用户界面,主要面向不会编程或不熟悉命令行的制作者。
  • warbler-pilot:辞书索引、搜索核心,用于辞书索引和查词软件调用。
  • warbler-echo:辞书读取核心,用于查词软件的制作。
  • warbler-ui:查词界面。
  • warbler-cargo:辞书发布、下载、同步的平台。

上述模块将按照优先级逐步完善、发布。

目前正在对内置搜索模式进行优化,增强搜索体验,并且可在移动端使用。

对于辞书作者配置的自定义搜索模式,属于扩展特性。若出现占用资源过大的问题,可用 warbler-cargo 调用 warbler-pilot 进行远程在线搜索,减轻本地设备荷载。

5 个赞

不知道是否方便,想了解下,你是用什么搜索引擎去实现这格式的?看到你有提到词典文件支持差分更新和实时修改,很像是搜索引擎的功能。

2 个赞

这一特性仅仅是指辞书制作者在修订时可以实时预览,实时修改;修改产生的 patch 文件同时可以给用户更新辞书时使用,避免每次更新都需要下载数 GB 的文件。实时更新辞书文件时,索引不会更新。只有当作者认为修订结束,可以发布时才会重新建立索引。

辞书实时修订是属于 warbler-factory 的功能,warbler-echo 不包括此特性,因而查词软件中不能实现实时修订(也没有必要实现)。

这样设计的考虑有两个方面:第一,辞书的修订通常并不多,用户不需要修改辞书,因而实时更新索引是没有必要的。第二,索引的数据结构决定了实时更新索引会消耗大量时间和资源,这一消耗对于辞书来说是没有必要的。

2 个赞

制作工具能实时预览修改,能产生 patch 文件就很强大了,查词确实不需要。同样在做词典,想提供 patch 文件的能力,浪费了两个月也没做好,逻辑过于复杂,测试也不好做,不止涉及到文件,还有查询这边,最后放弃了。

支持原创 :+1:

听起来有点过于牛逼啊, 这是要整一个生态啊, 把各种经典的词典数据充分运用起来, 将是英语学习者的一个莫大福音
很是期待, 祝早日上线

2 个赞

是没必要局限于某个格式或平台。不过与其另做一个转换程序,每个用户自己来转,不如直接在查询程序的内部支持直接读取是不是更好呢?特别是开发所需的劳力不相上下的情况下。
毕竟现在没有原生的WarblerDict的辞典,每个人手头的mdx也好epwing也好,要迁移到WarblerDict先要几十本辞典转来转去也要花相当的时间和精力的,门槛有点高。

对于我个人来说,如果是mdx等格式直读会出现效率性能问题,没有办法在不占用较大内存情况下做到毫秒级出检索结果,但我自己的格式可以。只做兼容的话也只能保证能用但不一定好用,转原生肯定是为了更好的能效,此外mdx格式经过转换后还能解决检索问题,那些带符号的拉丁字母可以直接输入[a-z],平假名片假名也可以混输,至少我的格式如此,看看WarblerDict的作者到时能不能搞出让我眼前一亮的新特性来。
反正只要W…Dict格式能流行起来,后面就会有大批制作者去适配这种格式,用户也无需太担心转换的问题

5 个赞

我只关心词典软件是免费还是授权?如何授权与免费?

compression 建议 fine-tune 再一下吧,比不过 lzo 实在是说不过去(

请问现在进展如何了,社区内做新格式的有很多,但至今连一个原型都没看到。

3 个赞

说了很多次,不如寄希望于现在做mdx开源软件的,系统整理出个mdx文件格式规范,然后另外起个格式名称(如命名为.emdx之类的)。这对现状改动最少,推广压力最小。

其他的都是在虚无缥缈地画大饼。

即使新格式出来,也是大饼。想想有那么多客户端要支持,不是简单能完成的,还不如好好支持mdx。

即使是 emdx 也是新格式,mdict这些也是支持不了的。其他软件想要支持也要用新的代码。所以和新格式也没有啥大区别吧, :crazy_face:

4 个赞