2004年03月22日

今天在freshmeat上看到了plans,它是一个web日历,宣称是最好看的,进去看一看。


http://www.planscalendar.com/


上面有它的一个演示,感觉最深的就是跨天的事件在日历格上可以横穿,你会看到一个横条穿过了好几天,它表示这个事件要跨越好几天。它还支持theme,可以更换整个显示。还可以将事件单列出来。支持多个日历,每个日历可以有不同的口令和用户配置(这一点在Demo中好象没看出来,可能是关掉了)。还可以将事件另存为文本或MS outlook格式。功能挺多的,下面是它的特性介绍。







Sharp-looking

2004年03月21日

从昨天开始因为《DocBook学习》教程的现阶段任务(自已定的)已经完成了,因此以后想写一些有关Docbook相关内容的东西。现在计划的是想将reStructuredText转化为DocBook格式写进去。因此开始尝试docutils项目的安装与试验工作。在docutils主页上面已经有人提供了一个docbook的writer,看一看能不能用。


都装好了,用html.py已经可以将它带的一个测试用的文本文件test.txt转换成html格式了。再将docbook writer安装好,用它的前端工具rst2docbook.py对test.txt进行测试,有问题报错。原因是有一些docutils的元素这个writer并未实现。于是我只好改源码去一一实现。在改的过程中,发现,reStructedText分析后的对象树已经和xml一样了,而且对于它所使用的元素名在docbook中大部分都有。reStructedText中的元素种类和个数已经非常多了。后来还找到docutils.dtd,哈哈,xml的DTD。在doctree文档中说,The Docutils document structure is formally defined by the Docutils Generic DTD XML document type definition, docutils.dtd, which is the definitive source for details of element structural relationships.看来我们应该认为reStructuredText其实就是xml格式的,只不过它是文本表示的。


这时我不禁想到,那么我们还要docbook writer吗?先生成xml,再象docbook一样编写xslt样式表去处理不更好吗?其实是完全可以,不过现在还没有人作。而且我还发现一个有趣的现象,在docutils.dtd中说明,对于它的使用应该采用:+//IDN docutils.sourceforge.net//DTD Docutils Generic//EN//XML 。注意前面的加号(+)。我记得在DTD的定义中,+表示被国际标准化组织认可的DTD,-表示未被认可的。难道docutils的DTD是认可的吗?有趣。在我经过这两天的努力,docbook writer已经改得可以运行(是可以运行,并未改好)。不过发现对于某些特殊元素的处理挺麻烦,还有就是CSS的使用等问题。以后再说吧。


我想起关于在中国Linux论坛上关于reStructuredText 和docbook, tex之间有一些讨论,有人喜欢结构文本,而我以前想用tex,现在则是docbook,倒底哪种好呢?因为每一种都可以用来写文章,都可以转换成多种格式,如HTML,PDF等。我个人的认为是:


结构文本


特点:容易掌握,写作方便,更适合非完整结构的写作(如发贴等)
缺点:特殊文本与普通文本的区分有时不太直观,程序化处理不方便


XML


特点:掌握适中,写作适中,要求结构完整,只需考虑写作内容,元素与内容限界清晰,适合程序化处理
缺点:生成输出格式时需要一些经验


TEX


特点:写作适中,要求结构完整,元素与内容限界清晰,数学公式处理强大,有许多样式包
缺点:掌握难,生成输出格式时需要一些经验


其中XML的写作根本不考虑排版,但其它两种都或多或少要考虑。


因此我个人认为:如果只关心内容和程序化处理的话,使用DocBook是最佳选择。作一般文档和网上留言之类使用结构文本。如果想排得漂亮请使用Tex。

今天在不同的地方看到有关这个数据库软件的名字,好奇心驱使下我来到了sqlite.org站点,查看了关于它的介绍,并下载了windows下的执行码和python绑定包。


windows版根本不用安装,解开到任何地方即可。它只有一个执行码。它的设计目标是嵌入式的,从而不需要server进程。运行时只要后面带上文件名,那么那个文件就会做为你的库文件而使用。如:sqlite d:\mydb.db。它支持大部分的SQL命令,这是一个列表:


  • ATTACH DATABASE
  • BEGIN TRANSACTION
  • comment
  • COMMIT TRANSACTION
  • COPY
  • CREATE INDEX
  • CREATE TABLE
  • CREATE TRIGGER
  • CREATE VIEW
  • DELETE
  • DETACH DATABASE
  • DROP INDEX
  • DROP TABLE
  • DROP TRIGGER
  • DROP VIEW
  • END TRANSACTION
  • EXPLAIN
  • expression
  • INSERT
  • ON CONFLICT clause
  • PRAGMA
  • REPLACE
  • ROLLBACK TRANSACTION
  • SELECT
  • UPDATE

  • 它还提供了虚拟机用于处理sql语句,这是一个很有趣的东西。支持事务功能。


    Python的绑定安装也很简单,下载安装包执行后一切就OK了。运行一下,很正常。


    看一看在一些简单语句的处理性能与mysql和postgreSQL的比较,除了一些不常用的语句外,竟然比其它两个都快,了不起。


    它还有Tcl, PHP, Java的绑定。甚至还有ODBC接口。


    这些东西全部是免费的。


    我想以后做些小东西,用它保存数据真是方便不过了。

    2004年03月18日

    今天偶然发现w3schools(http://www.w3schools.com/)网站,是专门讲述w3c各种各样标准的地方。上面的教程全部免费。有我感兴趣的xml,xslt,xsl-fo等内容,值得去看一看。

    今天试了试HTMLDOC,不支持中文,不支持多字节码。Q&A上说要1.9才支持,等等看吧。而且加入html页面时不能只加入一个起始文件,相关的文件都要加入。加入好象还有顺序。因为不支持中文就没有继续试下去。等1.9出来了再看看吧。

    2004年03月17日

    它是什么?它是一个可以将html转换成pdf的工具。这是我偶然在diveintopython一书中看到的。这本书是使用docbook编写的,它使用saxon将xml转换成html,然后,没有将xml转成xsl-fo,再转成pdf,而是用htmldoc将html转成pdf的。关注一下。


    htmldoc 地址:http://www.easysw.com/htmldoc

    2004年03月14日

    关于如何在自已的程序中调用FOP,将xml文件转换成PDF文件。特别有如何实现中文化的说明。


    http://www-900.ibm.com/developerWorks/cn/xml/x-fop/index.shtml

    2004年03月13日

    今天是blogbus.com关闭的第三天了,还是联不上。不知道是什么原因。感觉很可惜,其实blogbus的功能还是不错的,但是我没有作备份,不过重要的东西差不多都在。今天落在了donews了,不知道。。。


    象我这样突然没有了家的人,你们过得好吗?找到新家了吗?祝大家好运!