分类目录归档:vicalloy的庄家

发布“支持全文检索的大富翁浏览器”

下载地址:
支持全文索引的大富翁浏览器(Delphi盒子)

前言
    已经很久没有去大富翁了,后来想再去转转却发现连密码都已经忘记了。更惨的是密码找回的邮箱在去年被关闭了。这下密码是没办法用正常途径找回了。虽然有些可惜,但也算了吧相见不如怀念。
    前些天看到大富翁07年的离线数据库(非官方)发布了。在我早期玩delphi的时候大富翁的离线数据还是给了我很大的帮助的。我想从离线数据中收益的人应当不只我一个。曾有段时间离线浏览器层出不穷。当然离线数据最受欢迎的方式还是chm方式。只是随着离线数据的增大,要编译成单个CHM的难道增大。在04(03?)年后,chm版的离线数据就变成按年分的了。
    我想chm版的流行和良好的全文索引有很大的关系,目前的离线浏览器都是简单的使用数据库查询,一次无法对帖子内容等信息进行查询,大大限制了离线浏览器的用途。
    其实要增加全文索引的功能并不复杂,我也一直都有给离线浏览器加全文索引的想法(虽然我不用),只是Delphi的全文索引库一直没有出现。在去年(前年)的时候我看到了个lucene的Delphi版本,看似会是一个很有前途的东西,却在后来发现这东西居然需要.NET的支持。我对Delphi4.NET一直不待见。在我看来用Delphi对.NET进行封装完全是历史的倒退。接着说Delphi版本的lucene。虽然有4win32的计划,但似乎进展不大。JAVA和.NET都有垃圾收集机制,且JAVA和.NET的语言特性和delphi也有较大的差别,因此需要进行简单的移植难道并不会太小(c版的clucene也有不少问题,但至少算可用的)。
    虽然delphi自己整不了全文索引,但其实还是有不少办法来完成这个这个工作的。前些天我花了一晚上,用java的lucene给现有的离线浏览器加了个全文索引的功能。如果感兴趣就下了玩玩吧。

正文
    不知道现在是否还有人在用离线浏览器,不过即使没人用也没关系,这个程序更多的是演示如何使用混合语言进行开发。

    该版本是在“孟亚永"的离线浏览器基础上进行修改的,MYY的版本又是修改的左大侠的版本的。
    主要增加了全文索引功能(只支持问题)。
    加了全文索引的是主窗口上的快速搜索,将对所有帖子进行搜索(不包括回复)。
    本希望做成支持对回复也进行全文索引的,但这个数据库有些问题,离线浏览器部分不太好改。

  • 数据库的修改
    这个离线浏览器使用的数据库格式和newsmile的数据库有些不太一样,因此在使用前还得先动点手术。
    先执行
    Select ID, DateTime, UserFrom, Content, Parent into LettersReply from letters where Parent<>0
    生成回复表,然后在letters中删除回复信息
    delete from letters where Parent<>0
    再就是将letters的表名修改为lettersQ
    数据库的修改到这里就已经完成了,不过结果这些操作后数据库的个头大了不少,最好使用Access的压缩功能,压缩下。
    数据库修改后,还需要先建立索引,不然全文索引就无法工作,在bin目录下有个make_index.bat,直接运行这个脚本进行索引的创建。建立索引需要花点时间,我对2007的数据建立索引好像花了近10分钟。
  • JAVA部分
    由于全文索引用的是java的lucene,因此需要机器需要安装JDK。
    java部分全文索引的代码里面也带了。
    由于用到lucene,如果需要编译需要去下载个lucene(http://lucene.apache.org/java/docs/)。
  • 关于全文索引
    目前不少开发语言都有全文索引的支持。Delphi也有个,不过很怨念的是需要.NET的支持。
    虽然没有支持native的delphi全文索引库,但还是有些办法给native的delphi增加全文索引的支持的。
    比较容易做的方法有,将C++版本的全文索引库封成activex或DLL,不过我的C++不灵光,所以pass。
    python可以将类直接导出成activex,导出的方法简单。此外网上已经有人这么做了(doindex?)。但我测试pylucene的时候,中文索引通过不了。而且python导出的com需要启动一个com server,所以也pass。
    剩下最简单,最容易处理的方法就是将将全文索引部分写成一个单独的程序。在delphi里直接对这个程序进行调用,并通过获取控制台信息的方式,同索引服务器进行交互。目前采用的就是这个方式。
  • 关于JAVA的个头
    自从MS和SUN翻脸后,windows就不到jre了。要用户去安装一个1xM的JAVA虚拟机实在是一些让人为难。不过JRE还是可以精简到可以忍受的大小的。JRE1.5的虚拟机用7Zip压缩后大小为6xxK。库部分只对需要的部分打包,应当可以将JRE大小控制在2M内(我本来想精简下,不过今天是没时间了)。

热键助手1.1.1 phoenix版发布

    在沉寂多日之后,热键助手终于又有了次新的更新。其实这对我自己来说都有些难以置信,这个小软件我居然维护了这么多年。不过不管怎么说,有新版本发布总归是好事。
    新版本的增加了一键搜索的功能。也就是你可以给搜索引擎设置一个快捷键,在按下快捷键的时候自动调用搜索引擎搜索当前选中的文字。目前该功能还只支持baidu,如果这个功能真有人用的话就将google也给加上(反正也就几行代码,我主要不想做那个向导窗口)。
    下载地址见我的googlepage

开源项目发布『老照片』

项目地址:http://code.google.com/p/oldphoto/
没有整理发布包,代码直接在SVN中取。
项目的演示地址见:http://www.lzpian.com/
许可协议使用的是MPL1.1。
由于fckeditor有点大,我在开源项目中将fckeditor给去掉了。
虽然网站还有些小bug,不过功能方面还是基本完善的。
希望对学习Django的人能有所帮助。

备注:
本来想将这个web站点作为对web2.0的一次尝试,但目前看来基本上是失败的。
关于这个网站的分析可以见下面的文章。
老照片分析:http://vicalloy.spaces.live.com/blog/cns!96F003C204150CFE!708.entry

老照片内测了

    其实也没有什么所谓的内测了。拖拖拉拉,7788,终于将网站的基本功能给做完了。在经过了多次的烂尾以及难产之后,终于有个工程基本做完了。先挂到朋友主机上玩玩。如果感兴趣就上去看看吧。等那天觉得准备得差不多了,就去申请个域名发布了。
    下面还是先给网站做个简单的介绍吧。
    照片是凝固的历史,分享老照片,触摸岁月的痕迹。
老照片是一个分享老照片的社区,在这里你可以分享任何有历史味道图片。包括老照片,老剧照,古董等。
    网站地址:http://www.lzpian.com/
    网站的注册很简单,只要填写用户名密码就可以了(其实是我偷懒,还没做邮件验证)。

    如果说个人网页,其实我也有过不少了,但这个应当是第一个真正意义上的网站。 以前的全是用frontpage做的HTML页面。本来机器上还保留了,些以前的页面做为纪念,可惜年代已久。在经过了数次“灾难”后,已经遗失了不少。
    在N年前,网络泡沫正旺的时候,满世界的免费主页空间,于是我也就整过一个。当时我将我所有能找到的东西都给堆了上去,然后自我感觉良好。现在再看,实在是惨不忍睹。
    后来玩过一段时间的flash,因为美工不咋的,于是就做了个flash首页。还好,经过了第一次的“灾难”过后开始有点觉悟。虽然不是怎么帅,但也还过得去。因为只是玩玩FLASH,而且当时已经处于互联网泡沫的后期,免费空间难找。这个网站就从来没有上过互联网。
    也曾玩过一段时间的fireworks,尝试用fireworks为网站做效果,然后进行切图。于是有整理了个所谓的班级主页(其实这个网站几乎就没人知道了:)),主页里放的都是我的一些PS作品。当时开到网易的免费主页又开通了,跑去申请了个放上去。哪知道几个月再去看,网易居然有给关了:(。当然,这本来就是一个没人理会的网站。
    自己做些小软件,需要一个网站发布。于是搜遍了互联网,找了个国外的免费空间做了个单页的网站。可惜免费的东西就是不怎么样,几个月后被关了。过些日子后换过了一个主页空间,再次关闭。接收了免费没好货物的事实,终于买了个最便宜的个人主页空间,100¥两年。这期间改版数次,当然,都是小改。
    毕业后,很长时间都没有动过这个空间。某日,忽然又想起了这个。对主页进行了一次比较大的改版,多加了几个页面。
    因为工作的原因,没有继续摆弄Delphi,改做JAVA。WEB是做不少,可是这些都已经是工作了。自己的个人主页在到期后就没有继续摆弄了。也想过做个自己的WEB,不过因为太懒一直没有动手。直到这次终于有个基本完成的东西了。不过有意思的是,我没有用java,用了python。或许是喜新厌旧吧。
    在出现blog前,我喜欢在自己的个人主页上写下自己的心情。可惜在丢过数次数据后,这些东西也都丢了。
    有时候在想,工作后实在是遗失了太多的东西。以前本来还喜欢摆弄摆弄PS什么的,现在连为数不多的一点艺术细胞都没有了。

备注:
    说到网页其实我还有两个了,一个是我的googlepage,另一个是我的开源项目于crystal cursor的项目首页。不过这个都属于零维护的单页展示页面,要说主页实在是有些勉强。

发布-唐诗300首(Yahoo Widget)

    唐诗300首的软件我可不只做过一个。在刚学delphi的时候处于学习的目的做过诗词软件。后来对delphi熟悉些后,又重新整过一个。不过以前的这些都和网上的大同小异,没有多少特色。
    最近忽然对国学/文学又多少有了些兴趣,只是在这浮躁的世界里实在太难静下心来。还是唐诗好,简单却精巧。做个widget放在桌面上,不但可以充充门面,每天看一首,调节一下心情也还挺不错的。
    这个widget花费的时间比我预期的要多不少。本以为需求简单,加上已经有过做Yahoo Widget的经验,应当三下两下就搞定了,却不想还是挺化时间的。现在还在是完成了α版本,还有些细节需要处理。
    这个widget里面用了不少Slickies.widget(一个桌面便条)的代码和资源,没有通知作者是不是有些不道德。不过这次没太盗Yahoo自己的资源文件。考虑将细节处理一下就到Yahoo去申请发布。
 
更新说明(2007-03-04 21:43):
    做了些小修改,加了个帮助窗口。已经到Yahoo去申请发布了,不知能否通过

发布-支持农历的Yahoo Widget

Yahoo的widget确实很不错,放在桌面上十分漂亮,而且还有不少实用的功能(虽然我主要是为了美观)。快到春节了,本想找个支持农历的widget看看什么时候过年。在Yahoo数以千计的widget中居然没有一个支持农历的日历。于是就将yahoo自带的日历widget给整了整,加上了对农历的支持。
Yahoo的widget是以bsd协议发布的,这意味着你可以随意的修改widget的代码。可是widget的资源文件(图片等)却是有限制的,因此我的这个widget是注定见不得光的(资源文件全是yahoo自带的)。
如果有需要就到我的googlepage去下载吧。

PS:
googlepage在挂了多日后,今天终于又活了。

热键助手-phoenix 1.0 正式版发布

    热键助手应当算是我整的最久的软件了。刚开始学delphi没多久的时候就开始整了。后来学习oop的时候又重新整了一遍,这就是现在的phoenix版了。因为是个试验田,里面的过渡设计过于严重,搞得现在我自己看起来都晕, 不过本来就不打算再怎么整了的。
    今天做了个安装包,也算是来个超度吧。做事总得有]始有终。
    如果感兴趣,可以在我的goolepage去下载。