插入

普通模式下按以下按键可进入插入模式,执行插入操作,具体包括:

  1. 从光标当前所在位置的【】一个字符处开始插入:i
  2. 从光标当前所在位置的【】一个字符处开始插入:a
  3. 从光标当前所在行的【行首】处开始插入:I
  4. 从光标当前所在行的【行尾】处开始插入:A
  5. 从光标当前所在行的【下一行】处开始插入:o
  6. 从光标当前所在行的【上一行】处开始插入:O

删除

普通模式下按以下按键可执行删除操作,具体包括:

  1. 删除光标位置的【一个】字符:x
  2. 删除当前光标所在【】:dd
  3. 删除从光标所在位置到当前【行首】的内容:d0
  4. 删除从光标所在位置到当前【行尾】的内容:d$
  5. 删除从光标所在位置到当前【单词结束】部分的内容并进入插入模式:cwcW
  6. 删除从光标所在位置到当前【单词开始】部分的内容并进入插入模式:cbcB
  7. 删除从光标所在位置到当前【单词结束】部分的内容但进入插入模式:dwdW
  8. 删除从光标所在位置到当前【单词开始】部分的内容但进入插入模式:dbdB

:

(1) Vim的命令中,0 表示行首,$ 表示行尾,更多内容可参考Vim教程网上的Vim操作范围、文件范围介绍
(2) w (word)、b (back)命令用于光标移动,具体可参考vim教程网上的博客:vim光标移动命令汇总

  1. 删除当前【句子】从光标位置开始到【句末】的内容:d)
  2. 删除当前【句子】从光标位置开始到【句首】的内容:d(
  3. 删除当前【段落】从光标位置开始到【段末】的内容:d}
  4. 删除当前【段落】从光标位置开始到【段首】的内容:d{

:Vim命令中用 () 表示句子,{} 表示段落。

复制、粘贴

普通模式下按以下按键可执行复制、粘贴操作,具体包括:

  1. 复制从光标所在位置到当前【单词结束】部分的内容:yw
  2. 复制光标所在【】的所有字符 (包含换行符):yy
  3. 将最后一次删除或复制操作的文本内容粘贴到光标所在字符之【】:p
  4. 将最后一个删除或复制操作的文本内容粘贴到光标当前字符之【】:P

yyp 操作可以实现复制一整行内容到当前所在行的下一行。

替换

普通模式下按以下按键后,再输入字符可替换原始文件中的内容。

  1. 替换光标当前所在字符一次r
  2. 一直替换光标所在字符,直到按下[ESC]键为止:R

删除、复制操作的操作单位可以加操作次数,操作对象的范围为:操作次数 * 操作单位。

例如d3w 命令表示删除三个单词,10dd 命令表示从光标所在行开始删除后面的十行,更多内容可以参考Vim中的操作符和动作命令

撤销、反撤销

普通模式下可执行撤销操作,具体包括:

  1. 撤销最近的一次操作:u
  2. 恢复最近的一次操作(取消撤销):<Ctrl-r> (表示同时按下 Ctrl 键和 r 键)

:多次执行 u 命令可以连续撤销最近的操作。

保存

命令行模式下执行以下命令可保存当前编辑的文件内容

  1. 保存当前编辑的文件::w
  2. 保存当前编辑的文件并退出vim::wq
  3. 强制将当前编辑的文件保存::w!
  4. 退出不保存::q!

推荐阅读《Vim 怎么保存文件》获取更多关于使用 Vim 保存文件的方法。

另存为

命令行模式下执行命令 :write a.txt 可将 Vim 当前打开的文件另存为新文件 a.txt。

此外,:saveas b.txt (缩写形式 :sav a.txt) 也可将当前打开的文件另存为新文件 a.txt。

显示当前文件名

Vim 普通模式下,组合命令 <Ctrl-g> 可显示当前编辑文件名及行数,可以在不退出 Vim 的情况下了解当前编辑文件的信息,更多内容,可参考30个Vim常用命令和使用技巧

联系作者