Ansible playbook 文件是以 YAML 格式编写的文本文件。经常使用它们的人有自己喜欢的编辑器和插件扩展来简化格式设置。
当我在大多数 Linux 发行版提供的默认编辑器中教授 Ansible 时,我经常使用 Vim 的可视模式。它允许我在屏幕上高亮我的操作——我将要编辑的内容以及我正在进行的文本操作任务——以便我的学生更容易学习。
Vim 的可视模式
当使用 Vim 编辑文本时,可视模式对于识别要操作的文本块非常有用。
Vim 的可视模式有三个版本:字符、行和块。进入每种模式的按键是
- 字符模式:v (小写)
- 行 模式:V (大写)
- 块模式:Ctrl+v
以下是一些使用每种模式来简化工作的方法。
字符模式
字符模式可以高亮段落中的句子或句子中的短语。然后,可以删除、复制、更改或使用任何其他 Vim 编辑命令修改视觉上识别的文本。
移动句子
要将句子从一个地方移动到另一个地方,首先打开文件并将光标移动到要移动的句子中的第一个字符。

- 按 v 键进入可视字符模式。单词 VISUAL 将出现在屏幕底部。
- 使用箭头键高亮所需的文本。您可以使用其他导航命令,例如 w 高亮到下一个单词的开头,或 $ 包括行的其余部分。
- 文本高亮后,按 d 键删除文本。
- 如果您删除的太多或不够,请按 u 撤消并重新开始。
- 将光标移动到新位置,然后按 p 粘贴文本。
更改短语
您还可以高亮要替换的文本块。

- 将光标放在要更改的第一个字符处。
- 按 v 进入可视字符模式。
- 使用导航命令(例如箭头键)高亮短语。
- 按 c 更改高亮的文本。
- 高亮的文本将消失,您将进入插入模式,您可以在其中添加新文本。
- 输入新文本后,按 Esc 返回命令模式并保存您的工作。

行模式
当使用 Ansible playbook 时,任务的顺序可能很重要。使用可视行模式将任务移动到 playbook 中的不同位置。
操作多行文本

- 将光标放在要操作的文本的第一行或最后一行上的任何位置。
- 按 Shift+V 进入行模式。单词 VISUAL LINE 将出现在屏幕底部。
- 使用导航命令(例如箭头键)高亮多行文本。
- 高亮所需的文本后,使用命令来操作它。按 d 删除,然后将光标移动到新位置,然后按 p 粘贴文本。
- 如果您想复制任务,可以使用 y(yank)代替 d(delete)。
缩进一组行
当使用 Ansible playbook 或 YAML 文件时,缩进很重要。可以使用 > 和 < 键将高亮的块向右或向左移动。

- 按 > 增加所有行的缩进。
- 按 < 减少所有行的缩进。
尝试其他 Vim 命令以将其应用于高亮的文本。
块模式
可视块模式对于操作特定的表格数据文件很有用,但它也可以作为验证 Ansible playbook 缩进的工具非常有帮助。
任务是一个项目列表,在 YAML 中,每个列表项都以破折号和空格开头。破折号必须在同一列中对齐,才能处于相同的缩进级别。仅凭人眼很难看到这一点。任务中其他行的缩进也很重要。
验证任务列表是否缩进相同

- 将光标放在列表项的第一个字符上。
- 按 Ctrl+v 进入可视块模式。单词 VISUAL BLOCK 将出现在屏幕底部。
- 使用箭头键高亮单字符列。您可以验证每个任务是否缩进相同的量。
- 使用箭头键向右或向左扩展块,以检查其他缩进是否正确。

即使我熟悉其他 Vim 编辑快捷键,我仍然喜欢使用可视模式来整理我要操作的文本。当我在演示文稿中演示其他概念时,我的学生们看到了一个工具,可以在这个“对他们来说是新的”纯文本编辑器中高亮文本并点击删除。
2 条评论