1、撤销与恢复撤销

命令说明u撤销上一命令对编辑缓冲区的修改。U恢复当前行(即一次撤销对当前行的全部操作)。.重复上一命令对编辑缓冲区的修改。ctrl + ru 的逆向操作,恢复上一命令对编辑缓冲区的修改。2、复制与粘贴

命令说明y0复制从当前光标(不包含)左侧开始到该行行首的所有数据。y$复制从当前光标(包含)开始到该行行尾的所有数据。yy复制当前行。nyy复制从当前行(包含)开始的n行。y1G复制从当前行(包含)开始到第一行(包含)的所有数据。yG复制从当前行(包含)开始到最后一行(包含)的所有数据。p将复制的内容粘贴到下一行,原有的内容按顺序后移。np将复制的内容粘贴到下一行,粘贴n次,原有的内容按顺序后移。P将复制的内容粘贴到上一行,原有的内容按顺序后移。nP将复制的内容粘贴到上一行,粘贴n次,原有的内容按顺序后移。J将当前行与下一行数据合并成一行。3、行内删除

命令说明x删除当前光标处的字符。nx删除当前光标处的n个字符。X删除当前光标左侧的字符。nX删除当前光标左侧的n个字符。d0删除从当前光标左侧到本行行首的字符。d^删除从当前光标左侧到本行行首的字符。d$删除从当前光标到本行末尾的字符。D删除从当前光标到本行末尾的字符。dh删除当前光标左侧的字符。dl删除当前光标处的字符。d->move删除当前光标到新光标位置的字符。dw向后删除从当前光标到下一个单词起始处的字符,不包含下一个单词的第一个字符,单词以空格分隔。dnw向后删除从当前光标开始,包含当前单词在内的n个单词,单词以空格分隔。de向后删除从当前光标到当前单词结尾处的字符,包含当前单词的最后一个字符,单词以空格分隔。dne向后删除从当前光标开始,包含当前单词在内的n个单词,单词以空格分隔。db向前删除从当前光标(不包含)左侧到当前单词起始处的字符,包含当前单词的第一个字符,单词以空格分隔。dnb向前删除从当前光标(不包含)左侧开始,包含当前单词在内的n个单词,单词以空格分隔。df[x]删除当前光标(包含)至字符x(包含)的所有数据。4、行间删除

命令说明dd删除当前。ndd删除从当前行开始的n行。dj删除当前行和下一行。dk删除当前行和上一行。d1G或dgg或:1,.d删除当前行(包含)所在行到第一行(包含)的所有数据。dG或:.,$d删除当前行(包含)所在行到最后一行(包含)的所有数据。:nd删除指定的第n行。:n1,n2d删除指定范围[n1,n2]的行。:1,$d或:%d删除所有行。:g/^$/d删除所有空行。5、正则表达式删除

正则表达式删除的原理是通过正则表达式查找内容,然后将对应的内容替换为空,看起来像删除一样。

命令说明:%s/\d//g删除所有数字。:%s/\s//g删除所有空格。:%s/\n+$//g删除文档末尾回车产生的空行。6、进入 Insert 模式

命令说明i在当前光标处进行编辑。I在行首插入。A在行末插入。a在当前光标后插入。o在当前行后插入一个新行。O在当前行前插入一个新行。7、退出并保存

命令说明:q!强制退出,不保存。:q退出。:wq!强制保存并退出。:w保存文件。:w <文件路径>另存为。:saveas <文件路径>另存为。:x保存并退出。:wq保存并退出。8、替换

语法为:

:[addr]s/src/dist/[option]

命令说明[addr]表示检索范围,省略时表示当前行。[addr]“1,20” :表示从第1行到20行。[addr]“%” :表示整个文件,同“1,”。[addr]“. ,” :从当前行到文件尾。s表示替换操作。英文全称:substitutesrc源字符串:如果在源字符串和目的字符串中出现特殊字符,需要用”\”转义 如 \t。dist目的字符串:如果在源字符串和目的字符串中出现特殊字符,需要用”\”转义 如 \t。[option]表示操作类型,g 表示全局替换。[option]c 表示进行确认。我们有很多时候会需要某个字符(串)在文章中某些位置出现时被替换,而其它位置不被替换的有选择的操作,这就需要用户来进行确认。[option]p 表示替代结果逐行显示。: s/vivian/sky/替换当前行第一个 vivian 为 sky: s/vivian/sky/g替换当前行所有 vivian 为 sky:%s/vivian/sky/替换每一行第一个 vivian 为 sky:%s/vivian/sky/g替换每一行所有 vivian 为 sky9、g命令

表示查找到 pattern 匹配的内容,然后对其执行 cmd 命令。语法为:

:g/pattern/cmd

命令说明g表示检索命令,我推测是 grep 的缩写。pattern正则表达式cmd命令行,表示查找到 pattern 匹配的内容,然后对其执行 cmd 命令。:g/vivian/s//sky/替换每一行第一个 vivian 为 sky:g/vivian/s//sky/g替换每一行所有 vivian 为 sky注意注意注意:n表示阿拉伯数字