在 Linux 中使用 Emacs 文本编辑器的初学者指南

GNU Emacs 是最古老的文本编辑器之一。 它是由自由软件运动和 GNU项目的创始人 Richard Stallman 创建的。 他也是 GNU C 编译器和调试器的创建者。

Emacs 是一个多功能且高度可配置的文本编辑器,具有数百个键绑定和命令。 凭借众多的配置设置,它可以说是学习曲线陡峭的文本编辑器之一,因此大多数开发人员、系统管理员和普通 Linux 用户更喜欢 Nano 或 Vim 编辑器。

尽管学习 Emacs 的来龙去脉很复杂,但它并不完全对初学者不利,只要有正确的学习策略和指导,您很快就会感到舒服。

在本指南中,我们将牵着您的手,带您了解 Emacs 编辑器。 读完本指南后,您将掌握足够的知识来开始使用 Emacs 编辑器。

如何在 Linux 中安装 Emacs

在我们开始使用 Emacs 之前。 我们先来看看如何在各种Linux发行版上安装它。

对于基于 Debian 的系统,您可以使用 apt 包管理器从默认存储库轻松安装 Emacs。

$sudo apt update
$sudo apt install emacs -y

对于基于 RedHat 的系统(例如 Rocky Linux、Alma Linux 和 Fedora),请使用 dnf 包管理器从默认存储库安装 Emacs。

$sudo dnf update
$sudo dnf install emacs -y

要在其他 Linux 发行版上安装 Emacs,请使用以下适当的命令。

sudo emerge -a sys-apps/emacs [On Gentoo Linux]
sudo apk add emacs [On Alpine Linux]
sudo pacman -S emacs [On Arch Linux]
sudo zypper install emacs [On OpenSUSE]
sudo pkg install emacs [On FreeBSD]

除此之外,我们现在开始使用 Emacs 编辑器。

Emacs 编辑器入门

Emacs 编辑器提供 GUI 和 CLI 版本作为单独的实体。 然而,当从终端调用时,现代 Emacs 版本提供了一个包含菜单、按钮、窗口甚至单独编辑器的 GUI 编辑器。

要启动 Emacs 编辑器,只需运行以下命令:

$emacs

Emacs GUI 窗口将弹出,如图所示。 Emacs 徽标下方是一些有用的链接,您可以单击这些链接来获取有关如何使用 Emacs 的更多信息。

Emacs编辑器Emacs编辑器

从顶部开始,我们有一个菜单栏,其中包含标准菜单选项,例如“文件”、“编辑”和“选项”。 下面是工具栏,其中包含用于创建新文件、从缓冲区读取现有文件、复制、粘贴和剪切文本等菜单选项。

您可以将鼠标悬停在工具栏图标上,以查看单击时它们执行的任务或操作。

Emacs 编辑器菜单Emacs 编辑器菜单

现在让我们看看其余的 GUI 部分。

Emacs 编辑器部分Emacs 编辑器部分

让我们简要讨论一下每个部分:

  • 框架 – 在普通 GUI 应用程序中这将被称为窗口。 然而,在 Emacs 中,窗口被称为框架。 Emacs 中的默认窗口是“欢迎”窗口,在其中我们可以看到 Emacs 徽标以及有用链接和其他部分的概述。
  • 缓冲区 – 缓冲区是保存您正在键入或编辑的文本的画布或区域。 它只是保存文件中包含的文本。 t 内可以有多个缓冲区。 可以随意创建和“杀死”额外的缓冲区。
  • 闪烁光标 – 也称为“点”,闪烁的黑色光标就像可以插入文本的光标。
  • 状态栏 – 显示有关活动缓冲区和闪烁点的信息。 每个栏都有一个状态栏。
  • 迷你缓冲区——这是状态栏下方的空白区域。 它偶尔会显示状态消息(例如,如果您需要保存包含新更改的文件)。 此外,这是您输入和执行 Emacs 命令的部分。

在 Emacs 中打开新文件

要在命令行中的 Emacs 中打开新文件,请键入“emacs”,后跟文件名,然后按 Enter 键。 例如,要打开名为 file1.txt 的文件,请运行命令

emacs file1.txt

这将打开一个新窗口,其中包含包含文件内容的缓冲区。

在 Emacs 中创建新文件在 Emacs 中创建一个新文件

从这里您可以继续编辑或处理您的文件。

Emacs 键盘快捷键

在 Emacs 中,大多数任务都是借助键盘快捷键来执行的。 因此,为了更轻松地使用,您需要对常用的键盘快捷键有扎实的掌握。

在 Emacs 中,“Ctrl”和“ESC”键在键盘快捷键中至关重要。

“ESC”键(有时是“ALT”键)是俗称的“Meta”键,缩写为“Meta”键 "M"。 例如, M-q 意味着按下“Meta”并且 "q" 键盘上的按键。

“Ctrl”键缩写为 "C"。 例如, C-g 意味着按下“Ctrl”并且 "g" 键盘上的按键。

有些键盘快捷键要求您重复两次。 例如, ”C-h C-h" 表示按“Ctrl”和“h”组合键两次。

现在让我们回顾一下一些常用的键盘快捷键。

  • Ch Ch – 填充帮助手册。
  • Cg – 退出 Emacs 窗口。
  • Cx 右箭头键 – 向右循环浏览缓冲区。
  • Cx 左箭头键 – 向左循环浏览缓冲区。
  • Cx Cf – 在 Emacs 中打开现有文件。 系统将提示您输入迷你缓冲区中文件的路径。
  • Cx Cs – 保存对文件所做的更改。
  • Cx s – 该命令保存所有文件。

在 Emacs 中打开/保存和关闭缓冲区

要打开现有文件并将其内容加载到 Emacs 缓冲区中,请使用 C-x C-f 快捷组合。

此操作会在迷你缓冲区中打开一个提示,提示您输入文件名。 因此指定文件路径并按 ENTER 键。

在 Emacs 中打开现有文件在 Emacs 中打开现有文件

这是在 Emacs 中打开的名为“file1.txt”的示例文件。

在 Emacs 中打开文件在 Emacs 中打开文件

完成文件处理后,使用以下命令保存更改 C-x C-s 键盘组合。

在 Emacs 中保存文件在 Emacs 中保存文件

要将文件保存在不同的名称下,请使用 C-x C-w 键盘快捷键。 这相当于“另存为”功能。 该操作会提示您指定文件名。

在此示例中,我们将同一文件保存为“jamie.txt”。

在 Emacs 中保存带有名称的文件在 Emacs 中保存带有名称的文件

要关闭缓冲区,请使用 C-x k 捷径。 这会提示您终止缓冲区。 指定后,按 ENTER 退出。

在 Emacs 中关闭文件在 Emacs 中关闭文件

如果您在退出缓冲区之前进行更改,系统将提示您保存它们。 要保存更改,请在迷你缓冲区中键入“yes”并按 Enter 键。 否则,请输入“否”。

保存文件中的更改保存文件中的更改

如何在 Emacs 中剪切/复制/粘贴文本

就像 Nano 或 Vim 等命令行编辑器一样,Emacs 也有自己的“剪切”、“复制”和“粘贴”操作版本。 这些操作有不同的名称。

Kill 操作类似于“剪切”,“yank”类似于“粘贴”。 但在开始复制/剪切/粘贴操作之前,您需要首先选择文本区域。 这部分文本称为“区域”。

要选择要复制或剪切的文本区域,请将指针放在所需区域的开头。 接下来,按键盘上的“C-空格键”快捷键组合。 在迷你缓冲区中,您将看到一条写有“标记设置”的消息。

在 Emacs 中设置标记在 Emacs 中设置标记

接下来,使用箭头键选择文本。 在本例中,我使用向前箭头键选择第一行。 所选文本将突出显示,如图所示。

在 Emacs 中选择文本在 Emacs 中选择文本

要复制文本,请使用 M-w 快捷键 (ESC + W),要剪切或“删除”某个区域,请按 Cw。

接下来,移动到您想要“复制”或粘贴文本的区域,然后点击 C-y 粘贴它。

在 Emacs 中粘贴文本在 Emacs 中粘贴文本

要撤消更改,请使用组合 C-x u

如何在 Emacs 中搜索文本

要搜索字符串或单词,请调用 “C-s” 向前搜索的快捷方式。 要向后搜索,请使用 “C-r” 捷径。 接下来,输入搜索词或查询并按住 ‘C-s’ 或者 ‘C-r’

在所示示例中,搜索查询是单词“emacs”。

在 Emacs 中搜索文本在 Emacs 中搜索文本

搜索查询将突出显示,如图所示。

在 Emacs 中突出显示的搜索文本在 Emacs 中突出显示的搜索文本

当您到达搜索结果的末尾时,您将在迷你缓冲区上看到“Failing I-search”消息。

Emacs 中的 I-Search 失败Emacs 中的 I-Search 失败

如果进行向后搜索,您将在迷你缓冲区上看到“我向后搜索”通知。

在 Emacs 中向后搜索在 Emacs 中向后搜索

如果到达搜索模式的末尾,光标将移至文件的开头并回绕到搜索结果的开头。 您将在迷你缓冲区上收到“Overwrapped I-search”通知。

Emacs 中的点评式 I-SearchEmacs 中的点评式 I-Search

如何在 Emacs 中查找和替换文本

有时,您可能想要替换文本文件中的特定单词。 对于 Emacs,请使用 ALT + SHIFT + 5 组合。 在迷你缓冲区中输入搜索项。

例如,此处“Emacs”是搜索查询。 然后按 ENTER 键。

在 Emacs 中搜索单词在 Emacs 中搜索单词

接下来,提供您想要替换的字符串或单词。 在本例中,“Nano”是替换“Emacs”的单词。 然后按回车键。

在 Emacs 中替换 Word在 Emacs 中替换 Word

将显示搜索模式的第一个实例。

Emacs 中的搜索模式Emacs 中的搜索模式

从这里,您可以执行以下操作:

  • 键入空格或 'y' 替换一场比赛。 按“删除”或 'n' 跳到下一个查询。
  • 类型 '!' 替换缓冲区中所有剩余的匹配项。

替换 Emacs 中的模式替换 Emacs 中的模式

Emacs 中的文本换行

默认情况下,Emacs 不会自动换行。 这在阅读大型文档时可能会带来挑战,因为 Emacs 将段落视为单行。

要解决这个问题,只需运行 M-q 将文本换行成可读的段落,如图所示。

在 Emacs 中自动换行在 Emacs 中自动换行

常用的 Emacsa 键盘快捷键

以下是常用键盘快捷键的总结:

视窗

  • Cx 0:关闭或退出活动窗口。
  • Cx 1:关闭或退出除活动窗口之外的所有窗口。
  • Cx 2:水平分割当前活动窗口。
  • Cx 3:垂直分割当前活动窗口。
  • Cx o:将活动窗口更改为下一个窗口。

缓冲器

  • Ch Ch:打开帮助菜单。
  • Cx b:切换缓冲区。
  • Cx right:循环移动到右缓冲区。
  • Cx left:循环移动到左缓冲区。
  • Cx k:终止缓冲区。
  • Cx Cc:退出 Emacs。

导航

  • C-up:将段落向上移动。
  • C-down:向下移动一段。
  • C-right:将光标向右移动一个单词。
  • C-left:将光标向左移动一个单词。
  • home:将指针移至行首。
  • end:将指针移至行尾。

搜索文本

  • Cs:执行向前搜索。
  • Cr:执行向后搜索。
  • M-%:查询替换(’空格’要替换,’n’要跳过, ‘!’ 替换全部)。
  • Mq:进行文本换行。

打开/保存文件

  • Cx Cf:打开文件。
  • Cx Cs:保存文件。
  • Cx Cw:这相当于“文件另存为”功能。
  • C-_:撤消操作。

复制和粘贴

  • Cw:剪切该区域中的文本。
  • Mw:复制区域中的文本。
  • Cy:粘贴已剪切或复制的文本。

前往 Emacs GitHub 页面了解更多键盘快捷键。

结论

Emacs 是一个轻量级且高度可定制的文本编辑器,提供了大量的定制功能。 然而,由于其较长的学习曲线,现在的开发人员、系统管理员和运营团队更喜欢更容易学习和使用的 Nano 或 Vim 编辑器。

本指南涵盖了 Emacs 的基础知识,并介绍了如何开始使用编辑器以及常用的键盘快捷键。

资讯来源:由0x资讯编译自TECMINT。版权归作者James Kiarie所有,未经许可,不得转载
你可能还喜欢