新手到新手

作者:Dean Oisboid

本系列文章旨在面向有 MS-DOS 经验的 Unix 初学者。我假设这样的人探索 Linux 的主要目的是为了轻松、廉价且方便地学习 Unix。这个人可能会购买或下载 Linux,使其运行,并可能专注于主要方面——网络、X-Windows、GNU C/C++ 等——而没有真正探索一些其他产品,例如 scoreoxfractint。我最初不屑一顾这些程序,认为它们不可能是免费软件,肯定无法与 DOS 或 Windows 中存在的产品相提并论。

然后我意识到,这些免费赠品不一定等同于像 Lotus-123 或 WordPerfect 这样的商业程序的最新版本,但可能与旧版本相当。我意识到,就像在 DOS/Windows 中一样,这些免费软件和共享软件程序用于填补应用程序的空白,或提供商业同类产品的廉价替代品,或因为它们有趣且具有挑战性的开发练习而出现。

本文将是探索这些其他程序并了解它们能提供什么的小旅程的第一篇。我将重点关注三个主要主题:电子表格和文本编辑器、数据库和意外发现。总体的重点将是面向商业应用以及能够给从 DOS/Windows 环境访问的人留下深刻印象的东西。

对于这些程序中的大多数,相对于商业竞争对手的一个主要优势是包含源代码。Linux 爱好者已经知道这种奢侈。不幸的是,这种优势通常会随着编译源代码的需求而消失,这项任务给许多新手带来了痛苦。为了让其他新手放心,我发现重新编译并不总是令人头疼。在交换文件处于活动状态以提高内存的情况下,我在编译方面几乎没有遇到问题。我遇到的大多数故障都发生在 make 文件期望某些文件位于某些位置时;也就是说,当文件位置被硬编码时。当然,阅读 README 文件也有帮助。

要记住一点:这些程序中的许多程序都在不断修订,并且在本文发表时,可能已经发布了较新版本。随着更新,安装例程或要求可能会发生更改。因此,我在安装期间描述的过程或问题或我发现的错误可能并不总是适用于较新版本。

我的目标是了解这些程序与已知的 DOS/Windows 同类产品相比如何,而不是暗示哪个操作系统更好,而只是提供一个参考框架。

最后,如果 Slackware 没有提供安装选项,我会在 /usr 下解压这些程序,因为比我在 Unix 方面更有经验的人都推荐这样做。

让我们四处看看,好吗?

插曲:过时的痛苦

我意识到我 1994 年 10 月的 Linux 副本已经过时了。考虑到出版准备时间,我犯了一个严重的错误。现在是升级到 Linux 1.2.1 的时候了。

虽然我一直在使用 Morse Telecommunications 的 Slackware Professional 2.1,但我决定尝试另一种 Linux 产品。强烈推荐,我尝试的是 InfoMagic 的 Linux Developer's Resource。这个 4 CD 的庞然大物非常划算。“实时” Slackware 的 Sunsite、TSX-11 和 GNU 档案,以及其他大量内容,最重要的是:价格非常优惠。对于新手来说,该软件包可能过于庞大——只有少量安装手册。(其他文档在主 CD 上。InfoMagic 提供了一个入门级软件包——“Linux Toolbox”——看起来相当不错,并附带各种印刷帮助。)

我有两个抱怨。第一个是在使用发行版的 Windows Boot/Root 磁盘制作例程时。手册上说该程序可以让您选择 UMSDOS 作为 Root 选项,但我没有看到,我不得不从 CD 手动创建一个。没什么大不了的,当然不会让人感到震惊。

第二个抱怨,并非 InfoMagic 产品特有,而是更糟糕,但我认为它只适用于那些拥有 Sony cdu31a/cdu33a CD-ROM 的人。自动检测功能已从内核中删除或禁用。这意味着即使您从“Q”磁盘中专门选择 cdu31a 内核或重新编译内核,您的 CD-ROM 仍然无法被识别。至少对我来说是这样。我不知道为什么要删除这段在早期版本中可以工作的代码。但我经历了 Linux 新手地狱才让 Linux 再次工作。

[删除 cdu31a/33a 自动检测支持的原因是,自动检测这些驱动器的唯一可能方法非常危险,以至于检测到它可能会在启动时挂起计算机。这给成千上万没有 Sony CD-ROM 驱动器的人带来了巨大的麻烦,因此必须删除自动检测功能,并且它不再是标准 Linux 内核的一部分。 —ED]

一个积极的变化是 X-Windows 配置例程。现在它完成了所有繁琐的工作。之后您不必手动编辑任何文件。但是,与以前一样,您需要有关显示器和显卡的所有信息,但整个过程既简单又快捷。赞!

电子表格

sc(6.21,在磁盘集“AP”上)和 oleo(v0.03.2,来自 Sunsite)都是简化的电子表格,类似于早期版本的 Lotus-123 或 Excel。这两个程序都有相当多的功能,但缺乏其 MS-DOS 同类产品的 bang!。我安装这两个程序都没有问题,因为存档中包含二进制文件。两者都运行正常。我遇到的问题主要与光标移动有关。我被宠坏了;我喜欢使用光标键和 PageUp 和 PageDown。这两个程序都使用了 Unix 用户,尤其是 Emacs 用户可能熟悉的键和组合,但新手不熟悉。例如,Lotus-123 的“/”命令没有调出菜单。而且您不能直接在单元格中键入数字;您必须先按“=”键(如 Excel)。当我尝试将光标移动到单元格 zz3000 时,我在 sc 中收到了内存不足错误。当然,我正在通过 X-Windows 运行 sc,但交换文件处于活动状态。就像我说的,我被宠坏了。

xspread(1.1L2,来自 Sunsite)是一个基于 sc 的 X-Windows 电子表格。与 sc 一样,数据通过“=”输入。与 sc 不同,“/”会调出一个类似 Lotus-123 的菜单。如果您必须使用任何提到的免费电子表格,我会推荐这个,仅仅是因为它有类似 Lotus 的菜单。

文本编辑器

viEmacs(GNU 版本)是 Unix 中最流行和最著名的两个文本编辑器。以下大多数都出现在主 Slackware CD 上,并提供了安装脚本。

vi 在大多数系统上都有,是一个有用的紧凑程序,尽管我个人不喜欢它。命令和三种操作模式不是最直观的——并不是说 DOS 的 edlin 比它更好(尽管 DOS 的较新版本 edit 确实很出色)。我对新手的建议是学习它以备不时之需。同样,这个程序无处不在,因此至少基本了解如何使用它对您有帮助。

GNU emacs(19.27,在磁盘“E”上)不是一个程序,而是一种生活方式。要么您喜欢它,因为它几乎可以做任何事情,要么您讨厌它的晦涩难懂。我知道它让我感到不知所措。X-Windows 版本非常棒。它有一个菜单栏,使事情变得更容易,菜单选择既奇怪又独特。您可以阅读您的邮件或新闻,从教程中学习,搜索任何内容。选择日历可让您使用玛雅、伊斯兰、希伯来和其他一些日期。“月相”是一个选项。日记可用。至于文字处理,我认为它不太好。在 X-Windows 中,我期望能够更改字体或字号,但没有明显的方法可以做到这一点。将 emacs 与 Microsoft 的 Word for Windows 进行比较,会发现对于有抱负的 Unix 文字处理器来说,不便之处甚至更多。但是 emacs 显然可以为如此多类型的人——程序员、作家、电子邮件阅读器——做很多事情,以至于只关注一个领域并不能完全公平地评估它。

[它与文字处理器相比效果不佳的原因是它不是文字处理器。即使在 DOS 和 Windows 世界中,程序员也不会使用 Word for Windows 来编写程序,也不会像通常情况下那样使用 Brief 来撰写论文——Ed]

一个温和的警告:如果您没有选择从 CD 运行它,预计 emacs 将占用您硬盘驱动器 20 多兆的空间。

这就是我要说的关于 vi 和 emacs 的全部内容。如果您想了解有关任何程序的更深入信息,请查找 HOW-TO、FAQ 和书籍。《Linux Journal》在 1994 年 9 月号刊登了一篇关于自定义 emacs 的文章。Matt Welsh 的“Linux Installation and Getting Started”指南中对 vi 进行了很好的基本介绍。

一个小小的题外话:我不喜欢 vi,但我使用它;我喜欢 X-Windows 版本的 emacs,但我尚未使用它。总的来说,我发现 emacs 程序的非 X-Window 命令结构太神秘了。部分原因是我是从 DOS 过来的,在 DOS 中,大多数文本编辑器都有可用的 Wordstar 兼容命令,或者几乎所有内容都可以用鼠标操作。由于我使用“现代”文字处理器,我发现许多 Unix 程序似乎完全是野蛮的。对我来说,<F1> 应该始终是帮助键,而不是一些需要三只手的 ^h-? 组合。

Emacs 克隆

Lucid Emacs (19.10) 是 GNU Emacs 的一个干净变体,非常不错。与 GNU 版本不同,它不会用各种不寻常的选项轰炸您。它似乎专注于基本的文本编辑,仅此而已!光标键和鼠标移动以及所有其他基本功能都在那里。我发现的一个直接的吹毛求疵是,当您更改句子、单词或块的字体或字号时,文件中所有文本都会更改。[这是因为 Lucid Emacs,就像 GNU Emacs 一样,是一个文本编辑器,您正在更改整个文件显示的字体——Ed] 像 GNU Emacs 一样,Lucid 将占用大约 20 兆的硬盘空间,因此您可能需要在两者之间进行选择和/或从 CD 运行它。

jove (4.14.10,在磁盘“AP”上) 代表“Jonathan's Own Version of Emacs”。不幸的是,我无法探索它与真正的 emacs 之间存在的任何差异,因为我不是 emacs 的专家用户。一个明显的区别是使用的硬盘空间量。jove 远不及 emacs 消耗的 20 多兆。除此之外,同样令人恼火的晦涩命令仍然存在。

vi 克隆

vim (3.0,在磁盘“AP”上) 代表 Vi IMproved。我已经说过我不喜欢 vi。可悲的是,vim 并没有改善我的看法。它可能是 vi 的改进版,但它仍然没有使命令更直观,也没有使 vi 的想法更令人满意。

fpted 是另一个克隆。不幸的是,我无法真正尝试它,因为它崩溃了。但至少看起来可以轻松获得帮助菜单。

celvis 需要编译,这产生了大量警告。然而,它运行没有任何明显的问题。这个克隆的一个独特之处在于,使用合适的终端,您可以用中文书写。

vilexvile for X-Windows 是更多的 vi 克隆。我喜欢这两个,因为底部的突出显示栏在一定程度上清楚地告诉了帮助命令。我一直关注帮助,因为对于新手来说,帮助可能是最重要的命令。考虑到这些程序中的许多程序都不包含帮助文件或教程,一个菜单栏说帮助是 ^h-? 或类似的东西是一个很大的好处。

nvi (1.03) 是——猜猜看——又一个 vi 的另一个克隆,但底部没有有用的菜单栏。[它是来自伯克利的官方“新 vi”——Ed]

xvi 需要编译,我跳过了。我的猜测是这个程序又是 vi 的另一个变体,将在 X-Windows 下运行。

其他编辑器

jed (0.96,也在磁盘“AP”上) 是我喜欢的一个程序。它使用光标键进行轻松移动。顶部有一个菜单,另一个菜单在您点击 ^h-? 时出现在底部。但是,关于这一点有一个警告:选项 6 不会将您退出二级菜单,而是退出整个程序![Jed 也可以使用 Emacs、EDT 和 Wordstar 键,并且无论您使用哪种键集,光标键的工作方式都相同,因此大多数人都会对此感到满意——Ed]

joe (2.2,磁盘“AP”) 是我也喜欢的一个程序,但没有 jed 那么喜欢。屏幕更干净,没有帮助菜单那么杂乱,只有一个简单的栏在顶部。joe 使用类似 Wordstar 的命令,因此我在光标移动和其他命令方面没有问题。帮助有点棘手。^k-h 打开它,但要翻页需要笨拙的 ^[-. 或 ^[-,(向后)。

ed 代表“标准编辑器”,我无法忍受它。这是一个非常小的程序,没有明显的帮助命令。实际上,要弄清楚命令,您必须阅读源代码;对于黑客来说很好,对于新手来说不太好。[即使是大多数黑客也像躲避瘟疫一样躲避它。它仅用一个问号抱怨错误;手册上说,“有经验的用户通常会知道哪里出错了。”——Ed]

ez (7.0, ATK 6.3.1) 提供了一个干净的 X-Windows 文字处理器,显然可以单独使用或作为更大的 Andrew 系统的一部分使用。该程序在《Linux Journal》第 4 期(1994 年 8 月)和第 5 期(1994 年 9 月)中进行了介绍。ez 当然名副其实,具有鼠标和光标键控制以及具有多媒体选项的优秀文字处理器。尽管它易于使用,但它没有任何明显的方式来更改字体或字号,这对于这种质量的程序来说是不寻常的。我发现一个窗口列出了有关字体等信息,但同样没有明显的方法进行更改。

[ez 可以透明地编辑多种不同类型的文件。为了访问文字处理功能,您必须通过为文件指定正确的扩展名来打开正确类型的文件。以 .d 或 .doc 结尾的文件将启用 ez 的文字处理功能,这将在明显的菜单中显示;例如,字体更改通过“字体”菜单访问——Ed]

crisp(来自 Sunsite CD 的 v2.2e)是一个类似于 emacs 的编辑器,因为它具有出色的可扩展性、晦涩的命令,并且可以用于编程。解压二进制文件会产生大量文件,包括两个主要可执行文件 cr 和 xcr(用于 X-Windows 版本)。启动任一程序后,您都会得到一个窗口,底部有一个信息栏。对于新手来说,没有明显的帮助命令。^-h 不起作用。crisp 是我查看的最后一个软件包,我决心至少弄清楚其中的一些内容。我使用了 mc,最终在 /usr/local/lib/crisp/help/org 下发现了用户和程序员帮助文件。user.hlp 文件说 Alt-h 将提供帮助,但在 crisp 中它没有;它给出的乱码告诉我我可能遇到了模拟问题。够了,够了,我放弃。对于 Crisp 来说,这显然是最后一个免费版本,他们现在提供了一个时髦的图形产品。我希望它有一个明显的帮助命令。

哇!!!

在 CD 中搜寻时,我可能错过了一些电子表格和文本编辑器。我的总体印象是,对于电子表格,免费软件的水平与早期的 Lotus-123 或 Excel 相当。但是这些程序可以工作,并且可以满足您的基本电子表格需求。

有相当多的文本编辑器可供选择,其中大多数是 vi 或 emacs 的克隆。我个人最喜欢的是 jed、joe、任何 X-Windows 版本的 emacs 和 Andrew 的 ez。它们可以相当轻松地完成工作,并且 Emacs 显然可以处理大多数事情。为了节省硬盘空间,我可能会选择 GNU Emacs 而不是 Lucid,或者两者都从 CD 运行。但要总结我的感受:我想我期望程序更适合文字处理,为此我感到失望。如果我可以安装野兽,也许 WordPerfect 演示会满足我的期望。对于文字处理,我将坚持使用我在 DOS 中拥有的东西,或者购买一个好的商业 UNIX 文字处理器。作为一名作家,我需要高级功能,但上述程序都没有真正满足该标准,而是更适合制作 ASCII 文件和编程环境。

[现在正在进行项目以提供更多的文字处理程序。当它们准备好供公众使用时,我们将在《Linux Journal》中介绍它们——Ed]

Dean Oisboid,Garlic Software 的所有者,是一位数据库顾问、Unix 初学者和公开的外交迷。可以通过 73717.2343@compuserve.com 联系到他。

加载 Disqus 评论