学习 vi 编辑器/基本任务
学习 vi 编辑器: 熟悉 — 基本任务 — 让您的工作更轻松 — 高级任务 — 细节 — Vi 克隆 (Vim – 基本导航 – 模式 – 技巧和窍门 – 程序员需要了解的有用信息 – 增强 Vim – Windows 上的 Vim – VimL 脚本语言, Vile, BB vi) — vi 参考 |
现在我们知道了如何调用编辑器并退出编辑器,我们可以开始熟悉如何使用编辑器。
或者,您可以使用 ViM 导师,它包含在许多现代 vim 发行版中。它包含与以下文本基本相同的信息。您可以在 shell 中输入vimtutor来调用导师。
vi 编辑器可以做两件事
- 接受命令,例如删除一行
- 接受您输入的文本
在 vi 编辑器中,每个任务都是通过将编辑器置于特定的操作模式(通常称为模式)来实现的。当您想要给 vi 一个命令时,您进入命令模式,当您想要输入文本时,您进入插入模式。我们将在下面介绍如何做到这一点。
在开始写作之前设置正确的模式很重要,但这很容易做到。当您第一次启动 vi 时,它会自动处于命令模式。
输入文本是编辑器可以执行的最基本的任务!从命令模式(编辑器启动时的模式)开始,按i
进入插入模式,您就可以开始输入。您可以使用退格键来纠正您犯的错误。如果您在输入了几句话后犯了一个错误,请暂时保留这些错误,我们将在后面介绍如何纠正它们。输入完毕后,要退出插入模式并返回到命令模式,请按键盘上的 Escape 键(或键入 Control-[)。
让我们做一个练习
- 启动编辑器。
- 进入插入模式。
- 输入一些文本
- 返回到命令模式。
- 退出编辑器。
- 我们可以像上一节一样启动编辑器。
- 由于编辑器从命令模式开始,因此我们必须按下 <i> 键才能开始输入。
- 您可以自己编造一些文本!
- 按下 <Escape> 键。
- 如果要退出编辑器,您需要处于命令模式。由于按下 Escape 会使您处于命令模式,因此您可以使用上一节中的方法退出:键入 :q!
命令模式允许您在 vi 中执行许多有用的任务。
假设您已经写了一段时间,忘记了一些东西。按下 <Backspace>,擦除先前的工作不是最好的解决方案!我们希望能够在文档中自由移动,移动光标。
我们可以在编辑器中移动,首先进入命令模式,然后使用 <h>、<j>、<k> 和 <l> 键。
- 注意
- 您的箭头键可能已设置为工作,您可以使用它们,但为了熟练掌握和以后的更高级工作,您应该学习使用字母键。
- 在命令模式下,<h> 键将光标向左移动一个字符。
- 在命令模式下,<j> 键将光标向下移动一个字符。
- 在命令模式下,<k> 键将光标向上移动一个字符。
- 在命令模式下,<l> 键将光标向右移动一个字符。
如果您记不住这些,请记住 <h> 在最左边,字母 <j> 在行的下方,字母 <k> 在行的上方,<l> 键在最右边。(如果您眯着眼睛看,J 也像一个指向下方的箭头。)
使用这些键移动光标后,您可以再次按 <i> 进入插入模式。当您这样做时,您将在光标处插入文本,将文本插入到光标左侧的字符和光标的当前位置之间。让我们在一个练习中练习一下。
您可以用自己的句子重复此练习。在继续之前,请确保您能够熟练地完成此练习。
- 启动编辑器。
- 输入文本:“The quick fox jumps over the dog”
- 在“quick”和“fox”之间插入单词“brown”。
- 在“the”和“dog”之间插入单词“lazy”。
- 退出编辑器。
- 使用上一节中的方法。
- 按下 <i>,然后正常输入
The quick fox jumps over the dog
。 - 按下 <Escape>,然后按下 <h> 直到光标位于“fox”的字母“f”处。按下 <i>,然后输入“brown ”。
- 按下 <Escape>,然后按下 <l> 直到光标位于字母“d”处。按下 <i>,然后输入“lazy ”。
- 再次按下 <Escape>,然后键入 :quit!.
使用 h
、j
、k
和 l
可以,但 vi 不止理解行和列。以下是一些按文本对象移动的命令
w
向前移动到下一个单词的开头。b
向后移动到上一个单词的开头。(
和)
按句子移动,可以向前或向后。{
和}
按段落移动。
如果你在写了几行代码后发现错误,比如一直按 Backspace 键删除错误并重新开始,这并不总是最好的解决方案。我们需要一种方法来删除编辑过程中出现的错误。
vi 提供了几种删除文本的方法,具体取决于你要删除多少内容。现在你已经熟悉了如何移动光标,一旦你将光标移动到错误位置
x
键删除一个字符- 按下
dw
删除一个单词。 - 按下
dd
删除一行
从现在开始,我们将省略启动和退出编辑器的步骤——你应该已经熟悉这些步骤了。
- 输入以下文本:
Sad I been here, I wouldnt ever ever leave.
- 将单词 "Sad" 更改为 "Had"。
- 在 "wouldn" 后添加一个撇号。
- 删除多余的 "ever"。
- 删除整行。
- 正常输入文本。(你应该已经熟悉了进入和退出插入模式。)
- 进入命令模式,使用
h
将光标移动到行首,然后按下x
删除 "S"。按下i
进入插入模式,插入 "H",然后按下 Escape 退出插入模式。 - 现在将光标定位在 t 上,按下
i
进入插入模式,输入 " ' "。按下 Escape 退出插入模式。 - 将光标定位在单词 "ever" 中的第一个 "e" 上(选择你喜欢的一个)。输入
dw
删除该单词。 - 输入
dd
删除整行。
学习 vi 编辑器: 熟悉 — 基本任务 — 让您的工作更轻松 — 高级任务 — 细节 — Vi 克隆 (Vim – 基本导航 – 模式 – 技巧和窍门 – 程序员需要了解的有用信息 – 增强 Vim – Windows 上的 Vim – VimL 脚本语言, Vile, BB vi) — vi 参考 |