Crisp 文本编辑器
首先,来一段历史课。Crisp 最初是由英国伦敦的 Paul Fox 编写的共享软件产品。它是 Borland 销售的 MS-DOS 产品 Brief 的克隆版本,最初于 1988 年发布。最后一个共享软件版本 2.2e 发布于 1991 年。Fox 也被 Linux 社区称为 NOTIF 项目的发起人,他对共享软件的收入低下感到失望。但他也意识到自己手中有一个优秀的产品。因此,Crisp 的版本 3 于 1992 年作为商业产品发布;最初的 Linux 版本是 4.1.9。它可在多个平台上使用,包括 Sun、AIX、SCO、HP、Univel、Windows 3.1 和 Windows NT。字符版本和 X-Windows 版本都可用于 Linux。
Brief 的原始设计者非常注重人体工程学。Crisp 很容易学习:您真正需要知道的入门知识是 <alt>x 保存文件并退出。掌握了这一点后,<alt>l 用于块选行,<alt>c 用于块选列。数字键盘上的 + 键用于复制块,数字键盘上的 - 键用于剪切块。如果未定义块,则复制或剪切当前行。然后使用 <insert> 键插入块。<home> 键将光标移动到当前行的开头,<end> 键将光标移动到当前行的末尾。<PageUp>、<PageDown> 和“箭头”键执行其显而易见的功能。<alt>h 为您提供帮助。
要列出 Crisp 的所有功能将使本文变得非常长。它几乎具有 Emacs 的所有功能,但在我看来,它比 Emacs 更用户友好。它更容易自定义,并且文档和在线帮助也更容易处理。它更容易安装得多。Crisp 和 Emacs 都具有宏语言,但 Crisp 的宏语言类似于 C 语言,而 Emacs 的宏语言是 lisp 语言。从我个人的角度来看,Crisp 有一个 Emacs 缺乏的关键功能:当您退出 Crisp 时,它会记住您正在编辑的所有文件、光标在每个文件中的位置,以及对于 X-Windows 版本,窗口的大小。不仅如此,它还为您编辑文件的每个工作目录保留一个单独的“记录”。您可以在目录 /a 中编辑一组文件,保存并退出,cd 到目录 /b,编辑另一组文件,保存并退出,然后 cd 返回到 /a,并编辑第一组文件而不会丢失您的位置。甚至搜索字符串也会被保留。
版本 2.2e(最终共享软件版本)已移植到 Linux。可以在 sunsite.unc.edu 的 /pub/Linux/apps/editors 中找到它。
乍一看,当前版本的 Crisp 的外观和感觉与旧的共享软件版本没有太大区别。您会注意到的第一个不同之处是,如果您正在编辑 C 程序,则注释的颜色将与文本的其余部分不同。最大的区别在于当您按 <F5> 进行搜索时:您可以通过按 <up-arrow> 键来回忆以前的搜索字符串。此外,搜索可以像在 vi 中一样“环绕”。“上下文记忆”效果更好:共享软件版本仅记住上次编辑的文件,但商业版本会记住所有文件。商业版本具有可选的下拉菜单。
还有其他一些不太明显但非常重要的改进。在线帮助具有专业外观,而不是共享软件外观,并且产品总体上更紧凑。
Crisp 的共享软件版本包含 X-Windows 版本,但 Paul Fox 将其描述为“我如何学习进行 X-Windows 编程”。它可以正常工作,但非常简陋:没有菜单或图标,并且鼠标支持不完整。
Linux 商业版本使用 XView。Crisp 已在其他一些平台上使用 Motif 实现。由于实际的商业原因,Linux 版本没有这样做:购买 Motif 库的 Linux 用户数量很少,而在这些人中,愿意花钱购买 Crisp 的人数会更少。
我认为这是一个小缺点。我在工作中使用 SCO 系统,并且每天在其上使用 Motif 版本的 Crisp 八到九个小时。我更喜欢 Motif 的外观和感觉而不是 XView,尽管有 Sun 背景的人可能会有不同的感觉。
无论如何,我说的是“小”缺点。XView 版本肯定可以工作,并且 Crisp 的设计旨在最大限度地利用这种环境。鼠标可用于移动光标以及剪切和粘贴文本。文本窗口上方是一行彩色图标,可以单击这些图标来激活最常用的功能:搜索/替换、切换文件、录制和播放宏等。Crisp 窗口的顶部是一组下拉菜单,可用于执行 Crisp 能够执行的任何操作(据我所知),包括 make、grep 和阅读电子邮件。文本编辑和在线帮助窗口都有垂直和水平滚动条。还有一个单独的“工具包”窗口选项,其中包含更广泛的鼠标激活命令集。可以剥离其他编辑窗口。
还有一些对话框用于打开文件和搜索/替换等功能。幸运的是,这些对话框是可配置的。我怀疑大多数用户在学习如何使用 Crisp 时会希望打开对话框,并且他们会逐渐关闭它们。原因之一是您可以在没有对话框的情况下完成更多工作。另一个原因是,如果您使用的窗口管理器始终使光标下的窗口成为活动窗口(我使用 fvwm),您可能会在对话框中键入文件名之类的东西,然后发现您不小心编辑了文本,因为鼠标指向了错误的位置。
X-Windows 版本的 Crisp 的主要“哇,啊”功能是着色。与字符版本一样,注释是阴影化的。语言关键字(例如 if、case 和 int)以蓝色显示。字符串以红色显示。这些颜色选择是可自定义的,当然,还有 C 以外的语言的模板,包括 Ada、COBOL 和 SQL。
Crisp 具有 vi 模拟功能。对于 X-Windows 版本,vi 命令和 GUI 功能是可互换的。
正如我所说,讨论 Crisp 的所有功能将使本文变得非常长。我将提到一些我没有个人经验,但开发人员非常自豪的功能。
PostScript 程序列表:如果您有 PostScript 打印机或 ghostscript,Crisp 将尝试通过使用阴影、粗体等来模拟语言着色。如果您有彩色 PostScript 打印机,您将获得非常漂亮的列表。
过滤器机制:单击图标将执行预定义的命令(例如编译器),并且当前文件的内容将成为该命令的输入。Crisp 将打开另一个窗口,命令的输出将显示在该窗口中。
异步机制:外部程序可以将 Crisp 可以理解的命令(例如“edit__file”或“goto_line”)写入名为 cr.async 的文件。然后,外部程序可以向 Crisp 进程发送信号 -16 或 -17,Crisp 将执行这些命令。(如果您的外部程序无法发送信号,则可以将 Crisp 配置为每隔几秒钟查找 cr.async 文件。)
Crisp 的销售具有多种许可安排。最让大多数 Linux 用户感兴趣的将是单用户、单次执行许可证。字符版本或
X-Windows 版本的价格可能为 99 美元,手册(有用,但不是必需的)将另需 40 美元。国际代理
Crisp 的国际代理是 Vital,可以通过电子邮件 owner-crisp-list@uunet.uu.net 与他们联系。
Robert Broughton (a1040@mindlink.bc.ca) 拥有 22 年的软件开发经验,自 1993 年 2 月以来一直使用 Linux。他受雇于加拿大不列颠哥伦比亚省伯纳比的 Zadall Systems Group。