📜  系统程序设计中的编辑器及其类型

📅  最后修改于: 2021-10-21 05:06:54             🧑  作者: Mango

编辑器或文本编辑器是使用户能够创建和编辑文本文件的软件程序。在编程领域,术语编辑器通常是指包含许多用于编写和编辑代码的特殊功能的源代码编辑器。 Notepad、Wordpad 是 Windows 操作系统上常用的一些编辑器,而 vi、emacs、Jed、pico 是 UNIX 操作系统上的编辑器。通常与文本编辑器相关的功能是——移动光标、删除、替换、粘贴、查找、查找和替换、保存等。

编辑类型
通常有五种类型的编辑器,如下所述:

  1. 行编辑器:在此,您一次只能编辑一行或整数行。你不能有一个自由流动的字符序列。它只会处理一行。
    例如:电传打字机、edlin、teco
  2. 流编辑器:在这种类型的编辑器中,文件被视为连续流或字符序列而不是行号,这意味着您可以在此处键入段落。
    例如:UNIX 中的 Sed 编辑器
  3. 屏幕编辑器:在这种类型的编辑器中,用户可以看到屏幕上的光标,并且可以轻松地进行复制、剪切、粘贴操作。使用鼠标指针非常容易。
    例如:vi、emacs、记事本
  4. 文字处理器:克服屏幕编辑器的限制,它允许使用某种格式插入图像、文件、视频,使用字体、大小、样式功能。它主要关注自然语言。
  5. 结构编辑器:结构编辑器专注于编程语言。它提供了编写和编辑源代码的功能。
    例如:Netbeans IDE、gEdit。

其他一些编辑

  • 全屏编辑器:在计算机中,全屏编辑器或无干扰编辑器是一种占据全屏的文本编辑器,目的是使用户远离操作系统和其他应用程序。它可以帮助用户专注于写作,而不会被其他应用程序和杂乱的界面分心。全屏编辑器通常具有深色背景和带有浅色文本的文本字段。它们包括可定制的界面和字数统计等功能。
    例如:Acme、Coderoom、FocusWriter
  • 多窗口编辑器:多窗口编辑器允许您一次处理一个以上的文件,并通过拉取和放置将文件中的文本剪切并粘贴到另一个文件中。多窗口编辑器背后的两个基本概念是缓冲区和窗口。

    缓冲区:缓冲区保存要编辑的文本。文本可能来自文件或您想写在文件上的全新文本。一个文件只有一个与之关联的缓冲区。

    Windows:Windows 提供缓冲区视图,以查看缓冲区保存的内容并对其进行编辑和修改。一个缓冲区可能有多个窗口。在任何窗口中所做的任何更改都将反映在与同一缓冲区关联的所有其他窗口中。一旦与缓冲区关联的最后一个窗口关闭,文件就会隐藏。但是如果您对缓冲区进行了任何更改并且没有将它们写入磁盘,则可能不允许您关闭窗口。

  • DOS 编辑器:MS-DOS 编辑器或有时也称为只是编辑是一个基于字符的文本编辑器,它与 MS-DOS 和 32 位版本的 Windows 一起提供。以前,它是在编辑器模式下运行的 QBASIC,但在 DOS-7 之后,它变成了一个独立的程序。它也可用作记事本的替代品,因为记事本只能处理小文件,DOS 编辑器可以处理大约 66、257 行和最大 5 MB 的文件大小。它具有可自定义的颜色主题等功能,一次最多可以打开 9 个文件,可以以二进制模式打开文件。
  • VI 编辑器:vi 编辑器(可视化编辑器的简称)是一个在 UNIX 操作系统中可用的屏幕编辑器。 Vi 没有菜单,而是使用组合键来完成任务。 vi 的一个改进版本是 vim(vi Improvement)。 Vi 编辑器通常在所有版本的 UNIX 操作系统中都有,它的实现非常简单,它只需要很少的资源,并且更加用户友好。
  • 在线编辑器:在线文本编辑器是用于在 Web 浏览器中编辑文本的界面。它旨在通过直接编辑和更新为有效的 HTML 标记语言来减少用户所做的工作。 Internet Explorer 首先添加了“设计模式”的功能。设计模式允许用户编辑他们的文档,也允许使用光标进行编辑。
    例如:CKEditor、SnapEditor、Internet Explorer 的设计模式。

编辑过程

我们现在都知道编辑器是用于创建、编辑和修改文档的程序。文档可能还包括一些图像、文件、文本、方程式和图表。但是,我们将只限于文本编辑器,其主要内容是。
文档编辑过程主要折衷以下四项任务:

  • 选择要编辑或修改的文档部分。
  • 确定如何在视图中格式化此行以及如何显示它。
  • 指定并执行修改文档的操作。
  • 正确更新视图。

上述步骤包括过滤、格式化和旅行。

  • 格式:显示屏幕上的可见性。
  • 过滤:找出主要/重要的子集。
  • 旅行:定位感兴趣的区域。

编辑器的用户界面:编辑的用户界面通常意味着输入、输出和交互语言。输入设备用于在文档中输入文本、数据或处理命令。输出设备用于显示文档的编辑形式和执行的操作/命令的结果。交互语言提供与编辑器的交互。

  • 输入设备:输入设备一般分为文本输入、按钮设备和定位器设备。文本设备是键盘。按钮设备是特殊的函数键。定位器设备包括鼠标。还有一些特殊的语音设备,可以将您所说的任何内容写入 ext。
  • 输出设备: TFT 显示器、打印机、电传打字机、阴极射线管技术、高级 CRT 终端。
  • 交互语言:交互语言可以是面向输入或面向文本命令的,或者也可以是面向菜单的用户界面。打字或文本 面向命令的交互语言在最古老的编辑器中非常古老,以命令的形式、功能的使用和控制键等形式出现。面向菜单的界面有一个带有多选文本字符串集的菜单。显示区域有限,用户可以打开/关闭菜单。

编辑器结构

命令语言处理器接受命令,执行编辑和查看等功能。它涉及旅行、编辑、查看和展示。编辑操作由用户指定,显示操作由编辑器指定。移动和查看组件在操作过程中由编辑器或用户本身调用。

编辑组件是处理编辑任务的模块。当前编辑区域由与编辑组件关联的当前编辑指针确定。当编辑命令发出时,编辑组件调用编辑过滤器,生成一个新的编辑缓冲区。编辑缓冲区包含要在当前编辑器指针位置编辑的文档。
在查看文档时,查看区域的起始位置由当前查看指针决定。查看组件是用于查看下一个视图的模块集合。可以根据上次操作设置或重置当前查看。
当显示需要更新时,查看组件调用查看过滤器,生成一个新缓冲区,它包含要使用当前视图缓冲区查看的文档。然后将查看缓冲区传递给显示组件,该组件通过缓冲区映射生成显示。编辑和查看缓冲区可能相同或完全不相交。编辑和查看缓冲区也可以部分重叠或可以包含在另一个中。编辑器的组件在两个层面上与用户的文档交互:主内存和磁盘文件系统。