短短续续,经过了大约大半年的开发, 我的第一个软件作品:AlphaDict 终于 release 了1.0, 这是一段很困难的时间,需要从写文档开始,做所有的事情。为了保持代码的简洁, 可控,减少对系统平台的依赖性。我尽量使用 标准 c/c++ 库的 API, 不得不自己去封装打包一些东西。 有时候,碰到一些平时没有深入的问题,不得不中断手头的工作,来深入学习新的东西, UTF-8/16/32, UNICODE, UCS 为了深入理解这些,不得不停下来,去看UNICODE的spec, C++模板库没有 “树” 这个的数据类型,不得不临时去学习编写模板库,来写一个树的模板。 痛苦但很快乐,总算是可以发布 1.0 了,后面我将持续改进它,直到成为一款优秀的软件,被用户一直使用下去。
大家可以从下面两个地址,得到源代码, windows 版本将在下一个版本发布。 代码主要是依赖 qt5 和 libboost, 后面有计划开发一套 gtk 和 console 的UI .
source forge: https://sourceforge.net/projects/alphadict/
git hub: https://github.com/kartorz/AlphaDict
AlphaDict 是开放辞典格式的,我把它分为前端和后端, 前端是xml文本, 是用户进行编辑的格式。 后端则是辞典软件识别的格式, 这两者中间通过 AlConvert来进行转换。 AlphaDict 对第三方的辞典提供了2种支持方式。
1: 使用工具软件先转换成 前端的 xml格式,再转换为 后端的辞典格式。 目前的转换工具软件都是 python 脚本, v1.0支持 cedict 和 stardic
2: 直接在代码里面进行支持.
用户可以直接使用 前端的xml 来制作自己的辞典,使用任意的文本编辑工具,来写xml就可以了。 具体内容在 doc 文件夹下面可以找到。 也可以使用工具软件支持的辞典格式来编辑,如 CEDICT 的 txt 格式。 将来希望可以像 CEDICT 项目那样来搞一个开源的项目,让网友可以参与编辑辞典,共同编辑,共同使用,类似 wiki 。
开源社区里面,最有名气的辞典软件,非stardict 莫属。 AlphaDict 对它的辞典格式提供了支持,但是需要通过工具转换成 AlphaDict自己的 辞典格式。
下面是几张截图,希望大家喜欢。
原文地址:http://blog.csdn.net/kartorz/article/details/26662567