Linux 版 (精华区)

发信人: howdoit (教练让我上场!!!), 信区: Linux
标  题: 两种Linux小型个人数据库
发信站: 哈工大紫丁香 (Tue May 18 08:46:21 1999), 转信

《Linux公报》……让Linux更富魅力!

            Gaby and Notes-Mode

                        Revisited

        两种Linux小型个人数据库

                       ByLarry Ayers  翻译: 三皮

                                 引言

    尽管在Linux平台下有很多商业版本或者免费的SQL数据库,但是

这些功能完备的大型的客户/服务器模式的数据库,对于管理一个单独

的用户的数据来说,未免大材小用了。个人信息管理程序象Lotus

Organizer的等早已经被主流操作系统的用户所熟悉,就象Linux下的

用户所熟悉Preston Brown's Korganizer (a QT-based Organizer

clone) 和Ical (a Tcl/Tk calendar application)一样。这些数据库

管理系统提供的诸如日程表、工作规划等功能,是个人信息管理主要

的内容。但也因人而易:对我来说,我就很少使用日程表。但我确实

有一些信息希望能更有条理的组织起来。作为Unix世界的传统信条:

为特定的任务设计精而专的程序(而不是大而全)。所以我们就在本

文中向您推荐两个能够帮助Linux用户合理组织和更有效的访问私人数

据的数据库管理系统。 

                                Gaby

    Gaby的作者是Frederic Peters,最初它只是用GTK工具集写成的

一个简单的地址簿应用程序。当时的名字叫acronym,也就是Gaby

Address Book of Yesterday 的缩写。在程序经过进一步的改进以

后,Frederic Peters确定了acronym为Generic Astute Base of

Yesterday 的缩写。这次进一步的改进使得Frederic Peters意识到他

实际上已经建立了一个简单的、可以容纳其他类型数据的数据库管理

系统的框架。而名字中的of Yesterday 在我看来,实际是指:Gaby所

使用的数据存储格式是以semicolon作为分隔符的ASCII码格式,而非

今天的在大型数据库中通常所使用用的更加复杂、缺乏移植性的二进

制格式。ASCII码格式是若干年以前流行的数据格式,但是即使如此,

它仍然可以应用在大型的数据库系统中;你可以参照本报第34期有关

NoSQL的文章,NoSQL就是一种使用TAB作分隔符的ASCII字符格式为其

数据存储格式的。 

    安装完成后,可执行文件gaby实际上是一个到gbc的符号连接。执

行gbc启动Gaby,其运行界面实际象个文件柜而非缺省的地址簿。Gaby

可以以两种不同的视图显示用户的数据文件,这些文件通常都是保存

在用户家目录的.gaby目录下的。 

    在最新的Gaby版本中(1998年11月下旬的0.2.3版),用户可以为

人和数据库的适当的字段排序。这是一个新的、还有待完善的特性,

目前与此相关的文档也很少,所以我将带你快速预览一下这是如何实

现的。 

    一开始我们先创建一个空的目录/etc/gaby。在这个例子中,我创

建了一个我们当地草场植物种类的数据库。在Gaby的源发行版中,有

一个模板文件叫做desc.gtest。将这个文件复制到刚才创建的目录

中,将其后缀修改成与你的数据库相关的、便于记忆的名字。在本例

中为将通过键入mv desc.gtest desc.plants命令将文件名命名成了

desc.plants。编辑该文件,将字段名修改成能反映你数据本质的名

字。 

    下一个步骤就是在/usr/local/bin目录中(Gaby缺省安装到的目

录)创建一个符号连接 ,用ln -s gaby plants将gaby 连接成plants

(护着热和你需要的名字)。现在你可以通过键入相应的木好连接的

名字来启动Gaby了,启动后,你就会看到一个包含有你自定义的字段

名的窗口出现,你就可以在其中输入数据了。 

    缺省的视图格式是表单窗口,缺省的是将数据文件的第一条数据

显示在窗口中。见下图: 

  

    任何数据都可以在这种视图中通过图标或菜单来进行查看、添加

操作。在窗口的菜单条上有一个List菜单项,可以对任何字段实现按

照字母顺序的排序。其他的一些菜单项还提供了将数据输出成LaTeX和

HTML表格格式的功能。 

    另外一种视图格式是列表格式。这种视图可以一目了然的同时显

示多条记录。 

。 

  

    Gaby是以用户的共同参与和反馈为发展动力的自由软件的好范

例,正是这一切自然而然的激励着开发人员对程序进行更多更好的完

善。在我看来,Gaby决不会仅仅是一个功能单一的程序,用户会在的

使用过程中,不断的扩展、完善出一些当初的开发者所未曾考虑到的

功能,从而变得功能更加强大。 

    最新的Gaby发行版本可以从Gaby的Web站点上得到。 

                     Notes-mode Revisited

    我记得在第22期的Linux公报中有介绍GUN的Emacs编辑器的文章,

其中提到了Emacs的一个附加的模式叫做notes-mode。这个有用的编辑

器扩展模块的作者是John Heidemann,它最初的动机是为了更有效的

组织他的论文。这个模块的核心是一些Perl脚本集,其中一些是加在

cron任务队列中的日常运行的程序(完成索引文件和实现内部连接等

工作)。其他的则是完成一些time-stamp和初始化一个新的论文的功

能。 

    在我第一次接触到notes-mode's的功能、并得到软件时,我解开

压缩包,却没能够成功的让它在XEmacs这个我最喜欢的编辑器中工

作。最近,John Heidemann发布了1.16版本,这个版本终于可以在

Xemacs中很好的工作了(感谢Ramesh Govindan的贡献性的工作)。从

那时起我一直使用经常使用这种模式,并且从中发现了一些超越了该

模块设计初衷的用途。 

    Notes-mode是被设计用来进行论文组织的,但是我也能利用实现

对各种文章的组织管理工作。Notes-mode可以按照用户要求,每天创

建一个包含所需类别的新文件。这个程序可以通过键盘实现对每天不

同的类别中条目的浏览,还可以生成一个包含有与特定主题相关的所

有条目的临时缓冲区。这种效果看起来就想HTML文件中使用链接一

样,而不同的是没有连接标志和不需要浏览器来查看。另外一个与

html文件相类似的特性就是外部文件链接。借助于从Bill Perry的W3

Emacs Web浏览器代码,一个类似于file:///home/layers/xxx.txt的

文本文件可以通过鼠标或键盘被选择,目标所指的文件就会被调入

Emacs的缓冲区中等待编辑。而且每个条目都支持PGP密码验证。(使

用MailCrypt Emacs/PGP规范) 

    从某种意义上说,Notes-mode是另外一种适合于文章主题排序的

个人数据库,而且在上述范围内的功能可以与Gaby相提并论。不足之

处是仅对Emacs和Xemacs用户有用,而Gaby可以被任何一个有Xwin的用

户所使用。它们都是基于ASCII文本的,从而保证了所维护的数据可以

在任何编辑器和文本处理工具之间方便的移植。这两个工具对于任何

想按顺序组织信息集的用户来说,都以相当有价值的工具。 

    1.16版本的Notes-mode可以从它的WWW站点上下载。多种格式的完

整的文档也随软件包同时提供。 

Last modified: Sun 29 Nov 1998 

                       版权所有 (C) 1998 NJLUG

          出版于第35期《Linux公报》1998年12月 中文版第二期

                            


--
☆ 来源:.哈工大紫丁香 bbs.hit.edu.cn.[FROM: bin@mtlab.hit.edu.cn]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:5.172毫秒