KDE:未来的方向

作者:ruben.elizondo@slashdotmedia.com
KDE: The Highway Ahead

K 桌面环境 (KDE, 参见 http://www.kde.org/) 已经引起了广泛的兴趣,许多个人用户和机构都将其作为首选的桌面环境。然而,没有什么是完美无缺的,总有改进的空间。从一开始,我们就认为稳定性比遵守公布的日期更重要,因此,当我们认为 KDE 对于发布来说不够稳定时,偶尔会出现延迟。话虽如此,我们希望在 1998 年底之前,在发布一到两个 beta 版本后发布 KDE 1.1。此版本将包含许多错误修复,备受追捧的 ICQJava 支持,更强大的 HTML 显示代码以及一些新功能,例如整个桌面的可配置按键绑定。最初,我们计划仅发布错误修复作为 1.0.1 版本。但是,已完成的新功能已被多次请求,并且我们预计 2.0 在一段时间内不会稳定,因此我们希望包含所有已准备就绪的功能。这样,我们就可以在 1.1 发布后全力以赴。

图 1. KDE 1.1 桌面

图 2. KDE 1.0 桌面

KDE 2.0,下一个“官方”版本,可能会在 1999 年夏末发布,但这仍然不确定。与此同时,我们还将发布 KOffice 的第一个 alpha 版本(如下所述)。

KDE 2.0 的计划功能

我们计划对 KDE 2.0 进行大量的重写和重组。这可能会导致快照不稳定或无法编译,但与往常一样,KDE 紧密遵循开源模式,并通过 FTP 站点和 CVSup 服务器提供每日快照。(CVSup 是一个软件包,用于从远程服务器主机上的主存储库分发和更新源代码树。)

将进入 KDE 2.0 的一些新代码属于文件管理器/Web 浏览器/网络代码领域。 大部分新代码已经编写完成,只等待在 KDE 1.1 发布后提交到 CVS。 更改包括对文件管理器和网络代码的完全重写,这比当前版本有了很大的改进,能够浏览压缩存档以及对文件管理器的用户界面的全面改进。 与此相关的是 HTML 小部件,目前正在进行重组,以使其更适应新的 HTML 标准,并为 JavaScript 和免费 Java 虚拟机提供更好的支持。 (kaffe,http://www.kaffe.org/,如果它届时支持标准 AWT,抽象窗口工具包,程序,则是一个候选者。) 这些大部分不仅仅是空谈或仅仅是未来的计划,而是现有代码,其中一部分也可以通过 CVSup 服务器匿名访问。

另一个要完全重写的程序是邮件程序 KMail。 新版本,称为 KMail 2,在各种附件方面将更加健壮和灵活,并具有 IMAP 支持。

当然,不仅有像完全重写这样的革命,还有像现有功能的持续发展这样的进化。 越来越多的配置模块被添加到控制中心,我们计划提供更多专门针对系统管理员的模块。 我们希望能够支持 LinuxConf 和 COAS(Caldera 开放管理系统),但绝对需要更多熟练的开发人员来帮助这一领域。

另一个改进领域是拖放协议,我们将从我们“自制”的协议切换到 XDND 协议,因为它很可能成为(至少在免费的)UNIX 系统上未来的拖放标准,并且目前由使用 JX 工具包编写的程序支持。 GNOME 开发人员已表示他们也将支持此协议,这可能会导致 KDE 和 GNOME 程序之间的第一个互操作性点。

我们还将利用 Qt 2.0 版本提供的一些新功能,Qt 是与 KDE 一起使用的工具包。 其中包括主题和 Unicode 支持。 主题是我个人认为对于旨在提高生产力的桌面不太重要的东西,但我知道很多用户想要它,我们的目标是让用户满意。 请注意,KDE 中目前已经存在一些主题功能(例如,参见 http://kde.themes.org/),但新代码将把此功能扩展到应用程序窗口中的单个小部件。

已经制定了计划,将窗口管理器引擎从窗口管理器 KWM 中分离出来并放入库中,以便可以有不同的窗口管理器来实现不同的外观和感觉,并且仍然提供功能齐全的 KDE 桌面所需的窗口管理器功能。

Unicode(参见 http://www.unicode.org/)对于在远东和世界其他地区获得认可非常重要,这些地区的脚本包含超过 256 个字符。 已经存在两个 KDE 的中文本地化版本,但这些版本需要一个修补过的 X 服务器,该服务器将为显示而传输的两个字符代码组合成一个。 有了 Unicode 支持,就不再需要这样的技巧,因为 KDE 消息文件可以直接包含 16 位字符。

Unicode 支持的可用性在很大程度上取决于相关脚本的体面字体的可用性,这是 UNIX 系统传统上缺乏的。 我一直在研究将免费 True Type 引擎 Freetype 集成到 KDE 中,但这仍处于起步阶段。 (欢迎投稿。) 另一种选择是使用支持 True Type 字体的字体服务器。

正在进行的另一个领域是使 KDE 对残疾用户可访问。 已经可以使用带有 KDE 程序的大字体,特别是为所有 KDE 应用程序一次性设置如此大的字体,以便轻度视力障碍人士可以使用 KDE 程序,但这还不够。 我们在语音类型软件方面取得了一些成功,即允许用户通过对着麦克风说出命令来导航和操作桌面和应用程序的软件。 我们正在与大学合作,利用他们的研究成果并将其转化为可用的程序。 属于此类但尚未解决的另一个功能是屏幕阅读器,即通过声卡和扬声器读出屏幕上可见内容的软件。 虽然必要的文本到语音合成是一个不平凡的问题(即使像 emacspeak 这样的程序表明它可以在自由软件中完成),但当涉及图形用户界面时,屏幕阅读器变得更加难以编写,因为单个文本流不再像终端屏幕上那样可用。

KDE: The Highway Ahead

读者最感兴趣的主题是 KOffice 的开发。 KOffice(参见 http://koffice.kde.org/)旨在成为像 Microsoft Office 或 Lotus SmartSuite 这样的完整办公生产力套件。 它基于 CORBA(使用高质量、免费可用的 ORB Mico,它充分利用了当今的编译器技术),并使用 Open Parts 作为其对象模型。 Open Parts 是我们一位开发人员的硕士论文主题,并在相当简陋的 CORBA 标准之上提供了丰富的对象模型,包括向 CORBA 添加事件服务和事件过滤。 Open Parts 甚至可以与非 KDE 应用程序一起使用。

不仅大型 KOffice 应用程序将使用 CORBA,而且这项技术还将用于其他领域,包括面板,这样面板将能够更好地容纳其他程序。 另一方面,向像面板这样相对较小的程序添加 CORBA 合规性意味着使其臃肿,我们仍然需要调查这是否真的值得。

图 3. KPresenter

图 4. KSpread

目前,KOffice 由以下应用程序组成,在我写作时,这些应用程序具有不同的实用性级别。 首先,有 KPresenter(见图 3),一个类似于 MS PowerPoint 的演示程序,它已经用于“实际工作”(例如我在科隆举行的上次国际 Linux 大会上的 KDE 演示文稿),并具有大量的混合效果。 然后,有 KSpread(见图 4),一个电子表格,它已经包含大约 20% 的 MS Excel 功能,并且可以通过用 Python 编写的脚本轻松扩展。

KOffice 最近新增的是 KWord,一个旨在处理较小尺寸文档(如个人信件)以及完整书籍的文字处理器。 除了正常的文字处理功能外,它还具有一些 DTP 程序的功能,例如 Adobe FrameMaker。 对于大型文档或包含许多公式的文档,最好还是使用 KLyX,这是一个 WYSIAWYG(所见即几乎所得)文档处理器,它使用 LaTeX 作为其格式引擎,并且基于其 older brother, LyX。 KLyX 尚未像其他应用程序那样完全集成到 KOffice 概念中,但希望在不久的将来会实现。

图 5. KIllustrator

图 6. KFormula 和 KImage

KOffice 应用程序中目前最先进的可能是 KIllustrator(见图 5),一个基于矢量的绘图包。 它具有许多绘图工具并且非常实用。 KOffice 的另外两个应用程序是 KFormula(见图 6),一个数学公式排版器;和 KImage,一个较小的图像处理程序。 最后,还有 KChart,一个用于绘制商业图表(如图形和饼图)的组件;以及 KOrganizer,一个类似于 Lotus Organizer 的组织程序,它非常实用,并具有许多功能和不同的视图。

由于所有 KOffice 程序都基于 Open Parts 框架,因此它们都可以相互嵌入。 您可以将电子表格文档很好地嵌入到文字处理器文档中,并使用 KIllustrator 完成的矢量绘图来增强整个文档。 这种嵌入还具有带有动态菜单栏的就地激活功能,并且与某些我们讨厌的平台上的其他嵌入技术不同,它非常稳定。

我们非常清楚,要使 Linux 成为 Windows 或 Macintosh 的可行替代品,它必须具有一致的易于使用的桌面,并且还必须拥有一个办公生产力套件,该套件不必(或不应该)像 Microsoft Office 那样臃肿,但绝对需要日常使用的功能,并且必须能够读取常见的文档格式。 不幸的是,Microsoft Office 格式没有得到很好的文档记录。 尽管如此,在 LAOLA(用于 Microsoft 结构化存储文件的库)中所做的工作的帮助下,我们希望能够至少支持其中一些格式。 即使我认为这是一项枯燥的任务(如果有人认为我在这里错了,欢迎您帮助这个项目),我们还将编写一个 RTF 阅读器和编写器,并且我已经通过我自制的过滤器成功地将一些 FrameMaker 文档导入到 KWord 中。 是否支持其他格式(例如 WordPerfect、StarOffice 或 Lotus SmartSuite)取决于两件事:各自的制造商是否会提供其格式文档,以及是否有人自愿完成这项工作。

总结

正如您所看到的,KDE 世界正在发生许多事情,并且开发速度比以往任何时候都快。 与所有免费软件项目一样,我们只能和支持我们的人一样优秀,因此,如果您对 GUI 黑客技术、编写文件格式过滤器或我提到的任何其他主题(或完全适合 KDE 总体概念的其他内容)感兴趣,请随时与我们联系(有关联系信息,请参见 http://www.kde.org/)。 这真是一个令人兴奋的项目。

Kalle Dalheimer 是一位自由软件顾问,也是 O'Reilly 的技术作家/技术编辑。 他是 KDE 核心团队的成员,负责库和一些应用程序。 在不进行黑客攻击或写作时,他会和两岁的儿子一起玩耍,搭建木制微型铁路系统。 可以通过电子邮件 kalle@dalheimer.de 与他联系。

加载 Disqus 评论