今天 Release 了 1.1。 主要是移植到了 window 平台, 无须安装,直接执行。 对 UI 又一次进行了设计,应该比之前好看多了。 加入了 生词本 功能,方便 学习外语。

--------------------------------------------------------------------

短短续续,经过了大约大半年的开发, 我的第一个软件作品: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://pan.baidu.com/s/1o6uhAyQ”  下载词典。

以下是几张截图,希望大家喜欢。

AlphaDict 软件公布的更多相关文章

  1. 怎样将IPhone应用程序软件公布到应用程序商店?

    转自:http://www.shtion.com/667.html 怎样将IPhone应用程序软件公布到应用程序商店? 2009年10月19日公布 分类: App store, iphone, 手机应 ...

  2. 运维笔记10 (Linux软件的安装与管理(rpm,yum))

    概述:用rpm安装和管理软件(rpm解决依赖性),用yum安装与管理软件(yum解决依赖性). 1.linux的软件 linux能够说是一款改变时代的操作系统,可是一个操作系统再优秀假设没有好用的应用 ...

  3. Linux makefile 教程 很具体,且易懂

    近期在学习Linux下的C编程,买了一本叫<Linux环境下的C编程指南>读到makefile就越看越迷糊,可能是我的理解能不行. 于是google到了下面这篇文章.通俗易懂.然后把它贴出 ...

  4. 很详细、很移动的Linux makefile教程:介绍,总述,书写规则,书写命令,使用变量,使用条件推断,使用函数,Make 的运行,隐含规则 使用make更新函数库文件 后序

    很详细.很移动的Linux makefile 教程 内容如下: Makefile 介绍 Makefile 总述 书写规则 书写命令 使用变量 使用条件推断 使用函数 make 的运行 隐含规则 使用m ...

  5. iOS开发基本须要

        iOS开发基本须要 1 准备好对应的硬件和软件配置------基于Intel处理器的Mac操作系统 2 具有C++,Java或其它面向对象编程语言的开发经验 3 最新的iphone SDK的下 ...

  6. c语言函数---M

    书画小说软件 制作更满意的读.更舒心的写.更轻松的公布 最全古典小说网 由本软件公布所得 main()主函数 每一C 程序都必须有一main()函数, 能够依据自己的爱好把它放在程序的某 个地方.有些 ...

  7. Java面试宝典2014版

    一. Java基础部分......................................................................................... ...

  8. GNU GPL介绍

    怎样在程序中使用GNU许可证       不管使用哪种许可证,使用时须要在每一个程序的源文件里加入两个元素:一个版权声明和一个复制许可声明.说明该程序使用GNU许可证进行授权.另外在声明版权前应该说明 ...

  9. java大全经典的书面采访

    果学网  -专注IT在线www.prismcollege.com 1.面向对象的特征有哪些方面 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面.以便更充分地注意与当前目标有关的方面.抽象并 ...

随机推荐

  1. Win8 +PHP+IIS配置

    1.安装IIS:控制面板-程序和功能-打开或关闭Windows功能 2.配置PHP环境 -添加ISAPI筛选: -添加脚本映射:

  2. oracle删除用户所有表

    在删除数据表的时候往往遇到外键约束无法删除的情况,我们可以通过以下几步将数据库表删除,建议在删除库之前先对数据库进行备份,养成良好习惯. 1.删除外键 --查询用户所有表的外键,owner条件为use ...

  3. Servlet&JSP基础

    Servlet     JSP     JSP四种基本语法:     JSP注释<%--注释内容-->     JSP声明<%!变量.函数%>     JSP表达式<%= ...

  4. js 中对象属性的特性

    数据属性: 数据属性包含一个数据值的位置,在这个位置可以读取和写入值. 4个描述的行为特性: writable  表示能否修改属性的值.默认为true Enumerable 表示能否过过for in循 ...

  5. List<Map<String, Object>>相关

    2016年8月6日13:53:00 --------------------------- List<Map<String, Object>> List集合新增列 则需要: L ...

  6. 在python 中有时候我们用数组

    在python 中有时候我们用数组操作数据可以极大的提升数据的处理效率, 类似于R的向量化操作,是的数据的操作趋于简单化,在python 中是使用numpy模块可以进行数组和矢量计算. 下面来看下简单 ...

  7. thinkphp我掉下的一些坑

    1.数据库连接,需要连接没有数据表前缀 如下,第二个参数必须为null,我之前写的是'',结果给我默认加了前缀 $User = M('User',Null,'DB_CONFIG2'); 2.AJAX获 ...

  8. python运维开发之第二天

    一.模块初识: 1.模块定义 python是由一系列的模块组成的,每个模块就是一个py为后缀的文件,同时模块也是一个命名空间,从而避免了变量名称冲突的问题.模块我们就可以理解为lib库,如果需要使用某 ...

  9. jQuery设置按钮被点击状态

    js和jquery如何使按钮失效,很简单,只要设置disabled属性为true即为不可用状态即可 1.JS方法一: document.getElementByIdx("btn") ...

  10. HDU 3507 Print Article 斜率优化

    Print Article Time Limit: 9000/3000 MS (Java/Others)    Memory Limit: 131072/65536 K (Java/Others)To ...