Vim可視化模式入門
可視化模式使得在 Vim 中高亮顯示和操作文本變得更加容易。
Ansible 劇本文件是 YAML 格式的文本文件,經(jīng)常與它們打交道的人通過他們偏愛的編輯器和擴(kuò)展插件以使格式化更容易。
當(dāng)我使用大多數(shù) Linux 發(fā)行版中提供的默認(rèn)編輯器來教學(xué) Ansible 時,我經(jīng)常使用 Vim 的可視化模式。它可以讓我在屏幕上高亮顯示我的操作 —— 我要編輯什么以及我正在做的文本處理任務(wù),以便使我的學(xué)生更容易學(xué)習(xí)。
Vim 的可視化模式
使用 Vim 編輯文本時,可視化模式對于識別要操作的文本塊非常有用。
Vim 的可視模式有三個模式:字符、行和塊。進(jìn)入每種模式的按鍵是:
- 字符模式:
v(小寫) - 行模式:
V(大寫) - 塊模式:
Ctrl+v
下面是使用每種模式簡化工作的一些方法。
字符模式
字符模式可以高亮顯示段落中的一個句子或句子中的一個短語,然后,可以使用任何 Vim 編輯命令刪除、復(fù)制、更改/修改可視化模式識別的文本。
移動一個句子
要將句子從一個地方移動到另一個地方,首先打開文件并將光標(biāo)移動到要移動的句子的***個字符。
- 按下
v鍵進(jìn)入可視化字符模式。單詞VISUAL將出現(xiàn)在屏幕底部。 - 使用箭頭來高亮顯示所需的文本。你可以使用其他導(dǎo)航命令,例如
w高亮顯示至下一個單詞的開頭,$來包含該行的其余部分。 - 在文本高亮顯示后,按下
d刪除文本。 - 如果你刪除得太多或不夠,按下
u撤銷并重新開始。 - 將光標(biāo)移動到新位置,然后按
p粘貼文本。
改變一個短語
你還可以高亮顯示要替換的一段文本。
- 將光標(biāo)放在要更改的***個字符處。
- 按下
v進(jìn)入可視化字符模式。 - 使用導(dǎo)航命令(如箭頭鍵)高亮顯示該部分。
- 按下
c可更改高亮顯示的文本。 - 高亮顯示的文本將消失,你將處于插入模式,你可以在其中添加新文本。
- 輸入新文本后,按下
Esc返回命令模式并保存你的工作。
行模式
使用 Ansible 劇本時,任務(wù)的順序很重要。使用可視化行模式將 Ansible 任務(wù)移動到該劇本文件中的其他位置。
操縱多行文本
- 將光標(biāo)放在要操作的文本的***行或***一行的任何位置。
- 按下
Shift+V進(jìn)入行模式。單詞VISUAL LINE將出現(xiàn)在屏幕底部。 - 使用導(dǎo)航命令(如箭頭鍵)高亮顯示多行文本。
- 高亮顯示所需文本后,使用命令來操作它。按下
d刪除,然后將光標(biāo)移動到新位置,按下p粘貼文本。 - 如果要復(fù)制該 Ansible 任務(wù),可以使用
y(yank)來代替d(delete)。
縮進(jìn)一組行
使用 Ansible 劇本或 YAML 文件時,縮進(jìn)很重要。高亮顯示的塊可以使用 > 和 < 鍵向右或向左移動。
- 按下
>增加所有行的縮進(jìn)。 - 按下
<減少所有行的縮進(jìn)。
嘗試其他 Vim 命令將它們應(yīng)用于高亮顯示的文本。
塊模式
可視化塊模式對于操作特定的表格數(shù)據(jù)文件非常有用,但它作為驗證 Ansible 劇本文件縮進(jìn)的工具也很有幫助。
Ansible 任務(wù)是個項目列表,在 YAML 中,每個列表項都以一個破折號跟上一個空格開頭。破折號必須在同一列中對齊,以達(dá)到相同的縮進(jìn)級別。僅憑肉眼很難看出這一點??s進(jìn) Ansible 任務(wù)中的其他行也很重要。
驗證任務(wù)列表縮進(jìn)相同
- 將光標(biāo)放在列表項的***個字符上。
- 按下
Ctrl+v進(jìn)入可視化塊模式。單詞VISUAL BLOCK將出現(xiàn)在屏幕底部。 - 使用箭頭鍵高亮顯示單個字符列。你可以驗證每個任務(wù)的縮進(jìn)量是否相同。
- 使用箭頭鍵向右或向左展開塊,以檢查其它縮進(jìn)是否正確。
盡管我對其它 Vim 編輯快捷方式很熟悉,但我仍然喜歡使用可視化模式來整理我想要出來處理的文本。當(dāng)我在講演過程中演示其它概念時,我的學(xué)生將會在這個“對他們而言很新”的文本編輯器中看到一個可以高亮文本并可以點擊刪除的工具。






































