Vim 可视化模式入门 | Linux 中国

2019 年 3 月 4 日 Linux中国
可视化模式使得在 Vim 中高亮显示和操作文本变得更加容易。
-- Susan Lauber

Ansible 剧本文件是 YAML 格式的文本文件,经常与它们打交道的人通过他们偏爱的编辑器和扩展插件以使格式化更容易。

当我使用大多数 Linux 发行版中提供的默认编辑器来教学 Ansible 时,我经常使用 Vim 的可视化模式。它可以让我在屏幕上高亮显示我的操作 —— 我要编辑什么以及我正在做的文本处理任务,以便使我的学生更容易学习。

Vim 的可视化模式

使用 Vim 编辑文本时,可视化模式对于识别要操作的文本块非常有用。

Vim 的可视模式有三个模式:字符、行和块。进入每种模式的按键是:

◈ 字符模式:  v (小写)
◈ 行模式:  V (大写)
◈ 块模式:  Ctrl+v

下面是使用每种模式简化工作的一些方法。

字符模式

字符模式可以高亮显示段落中的一个句子或句子中的一个短语,然后,可以使用任何 Vim 编辑命令删除、复制、更改/修改可视化模式识别的文本。

移动一个句子

要将句子从一个地方移动到另一个地方,首先打开文件并将光标移动到要移动的句子的第一个字符。

◈ 按下  v 键进入可视化字符模式。单词  VISUAL 将出现在屏幕底部。
◈ 使用箭头来高亮显示所需的文本。你可以使用其他导航命令,例如  w 高亮显示至下一个单词的开头, $ 来包含该行的其余部分。
◈ 在文本高亮显示后,按下  d 删除文本。
◈ 如果你删除得太多或不够,按下  u 撤销并重新开始。
◈ 将光标移动到新位置,然后按  p 粘贴文本。

改变一个短语

你还可以高亮显示要替换的一段文本。

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

行模式

使用 Ansible 剧本时,任务的顺序很重要。使用可视化行模式将 Ansible 任务移动到该剧本文件中的其他位置。

操纵多行文本

◈ 将光标放在要操作的文本的第一行或最后一行的任何位置。
◈ 按下  Shift+V 进入行模式。单词  VISUAL LINE 将出现在屏幕底部。
◈ 使用导航命令(如箭头键)高亮显示多行文本。
◈ 高亮显示所需文本后,使用命令来操作它。按下  d 删除,然后将光标移动到新位置,按下  p 粘贴文本。
◈ 如果要复制该 Ansible 任务,可以使用  y(yank)来代替  d(delete)。

缩进一组行

使用 Ansible 剧本或 YAML 文件时,缩进很重要。高亮显示的块可以使用 > 和 < 键向右或向左移动。

◈ 按下  > 增加所有行的缩进。
◈ 按下  < 减少所有行的缩进。

尝试其他 Vim 命令将它们应用于高亮显示的文本。

块模式

可视化块模式对于操作特定的表格数据文件非常有用,但它作为验证 Ansible 剧本文件缩进的工具也很有帮助。

Ansible 任务是个项目列表,在 YAML 中,每个列表项都以一个破折号跟上一个空格开头。破折号必须在同一列中对齐,以达到相同的缩进级别。仅凭肉眼很难看出这一点。缩进 Ansible 任务中的其他行也很重要。

验证任务列表缩进相同

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

尽管我对其它 Vim 编辑快捷方式很熟悉,但我仍然喜欢使用可视化模式来整理我想要出来处理的文本。当我在讲演过程中演示其它概念时,我的学生将会在这个“对他们而言很新”的文本编辑器中看到一个可以高亮文本并可以点击删除的工具。


via: https://opensource.com/article/19/2/getting-started-vim-visual-mode

作者:Susan Lauber[2] 选题:lujun9972 译者:MjSeven 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

登录查看更多
1

相关内容

Vim 是从 vi 发展出来的一个文本编辑器。宏、跳转、代码补全、编译及错误跳转等方便纯文本编辑和编程的功能特别丰富,也支持使用不少的脚本语言进行功能定制和扩充,在程序员中被广泛使用。
【2020新书】实战R语言4,323页pdf
专知会员服务
98+阅读 · 2020年7月1日
【2020新书】从Excel中学习数据挖掘,223页pdf
专知会员服务
85+阅读 · 2020年6月28日
【2020新书】使用高级C# 提升你的编程技能,412页pdf
专知会员服务
56+阅读 · 2020年6月26日
一份简明有趣的Python学习教程,42页pdf
专知会员服务
76+阅读 · 2020年6月22日
Python导论,476页pdf,现代Python计算
专知会员服务
253+阅读 · 2020年5月17日
【实用书】Python爬虫Web抓取数据,第二版,306页pdf
专知会员服务
115+阅读 · 2020年5月10日
TensorFlow Lite指南实战《TensorFlow Lite A primer》,附48页PPT
专知会员服务
68+阅读 · 2020年1月17日
【电子书】C++ Primer Plus 第6版,附PDF
专知会员服务
83+阅读 · 2019年11月25日
【电子书】Flutter实战305页PDF免费下载
专知会员服务
20+阅读 · 2019年11月7日
【初学者系列】tensorboard学习笔记
专知
7+阅读 · 2019年10月4日
GitHub超2.7万星,最全Python入门算法来了
新智元
5+阅读 · 2019年4月28日
Python奇淫技巧,5个数据可视化工具
机器学习算法与Python学习
7+阅读 · 2019年4月12日
文本分析与可视化
Python程序员
8+阅读 · 2019年2月28日
如何编写完美的 Python 命令行程序?
CSDN
5+阅读 · 2019年1月19日
教你用Python来玩跳一跳
七月在线实验室
6+阅读 · 2018年1月2日
Tensorflow 文本分类-Python深度学习
Python程序员
12+阅读 · 2017年11月22日
Arxiv
3+阅读 · 2018年11月29日
Arxiv
6+阅读 · 2018年3月31日
Arxiv
7+阅读 · 2018年3月22日
Arxiv
10+阅读 · 2017年11月22日
VIP会员
相关VIP内容
【2020新书】实战R语言4,323页pdf
专知会员服务
98+阅读 · 2020年7月1日
【2020新书】从Excel中学习数据挖掘,223页pdf
专知会员服务
85+阅读 · 2020年6月28日
【2020新书】使用高级C# 提升你的编程技能,412页pdf
专知会员服务
56+阅读 · 2020年6月26日
一份简明有趣的Python学习教程,42页pdf
专知会员服务
76+阅读 · 2020年6月22日
Python导论,476页pdf,现代Python计算
专知会员服务
253+阅读 · 2020年5月17日
【实用书】Python爬虫Web抓取数据,第二版,306页pdf
专知会员服务
115+阅读 · 2020年5月10日
TensorFlow Lite指南实战《TensorFlow Lite A primer》,附48页PPT
专知会员服务
68+阅读 · 2020年1月17日
【电子书】C++ Primer Plus 第6版,附PDF
专知会员服务
83+阅读 · 2019年11月25日
【电子书】Flutter实战305页PDF免费下载
专知会员服务
20+阅读 · 2019年11月7日
相关资讯
【初学者系列】tensorboard学习笔记
专知
7+阅读 · 2019年10月4日
GitHub超2.7万星,最全Python入门算法来了
新智元
5+阅读 · 2019年4月28日
Python奇淫技巧,5个数据可视化工具
机器学习算法与Python学习
7+阅读 · 2019年4月12日
文本分析与可视化
Python程序员
8+阅读 · 2019年2月28日
如何编写完美的 Python 命令行程序?
CSDN
5+阅读 · 2019年1月19日
教你用Python来玩跳一跳
七月在线实验室
6+阅读 · 2018年1月2日
Tensorflow 文本分类-Python深度学习
Python程序员
12+阅读 · 2017年11月22日
Top
微信扫码咨询专知VIP会员