1. 普通模式、插入模式与命令输入
-
默认为普通模式,使用
ia等插入命令会进入插入模式,其文件行最下方会有提示

-
普通模式下输入
:(冒号)可以进行命令输入,键入的命令内容在最下方显示

-
插入模式与命令输入时切换普通模式,按
ESC按键,此时文件行最下方提示消失变为空白
2. 普通模式下移动光标
2.1 上下左右移动光标
k(上)
h(左) l(右)
j(下)
- 在命令前加数字n,可重复该命令n次;如
3j命令为向下移动光标3次,5l为向右移动光标5次
2.2 单词之间的移动
-
在普通模式下,使用命令
w可以使光标移动至下一单词的词首 -
在普通模式下,使用命令
b可以使光标移动至上一单词的词首 -
在普通模式下,使用命令
e可以使光标移动至下一单词的词尾 -
在普通模式下,使用命令
ge可以使光标移动至上一单词的词尾
2.3 行内的移动
- 在普通模式下,使用命令
^(Shift+6)可移动光标至该行非空字符的行首,使用命令0(数字0),可以使光标移动至行首 - 在普通模式下,使用命令
$(Shift+4),可以使光标移动至行尾 - 在普通模式下,使用命令
f加指定字符 x,可移动光标至光标后的第一个指定字符 x 处,如hello world!!,当光标在h处时,使用命令fo即会将光标移至hello的o字符处 ,当光标在w处时,使用命令fo则会将光标移至world的o字符处,同理,使用F命令则是向光标前查找指定字符并移动光标 - 对于
f与F命令,可以使用;或,命令重复f命令的操作,分别是重复正向与反向查找并移动 - 在普通模式下,使用命令
%(Shift+5)可以使光标移动至该行的括号上,多次使用会在左右括号间移动
2.4 行之间的移动
- 在普通模式下,使用命令
gg可移动光标至文件首行 - 在普通模式下,使用命令
G可移动光标至文件末尾行 - 在普通模式下,使用数字与命令
G组合可移动光标到指定行,如3G为移动光标至文件的第三行 - 不知道行号,可输入命令
:set number设置显示行号,输入命令:set nobumber关闭显示行号
2.5 滚屏查看内容
-
在普通模式下查看文件,当文件内容过多无法显示完全时,需要滚屏查看
-
使用
CTRL+E组合键命令可向下滚动一行,使用CTRL+Y组合键命令可向上滚动一行 -
使用
CTRL+U组合键命令可向下滚动半屏,使用CTRL+D组合键命令可向上滚动半屏 -
使用
CTRL+F组合键命令可向下滚动整屏,使用CTRL+B组合键命令可向上滚动整屏 -
普通模式下,使用
zz命令将光标所在行调整在屏幕中间,使用zt命令将光标所在行调整在屏幕最上方,使用zb命令将光标所在行调整在屏幕最下方
3. 普通模式下插入内容(进入插入模式)
- 普通模式下使用
i命令在光标所在字符前插入内容 - 普通模式下使用
a命令在光标所在字符后插入内容 - 普通模式下使用
I命令在行首插入内容 - 普通模式下使用
A命令在行尾插入内容 - 普通模式下使用
o命令在光标所在行下方新建空白行插入内容 - 普通模式下使用
O命令在光标所在行上方新建空白行插入内容 - 普通模式下使用
cl命令修改光标所在字符,该命令会将光标所在字符删除并进入插入模式,通常配合数字进行多个字符修改,如c3l为修改光标往右共三个字符 - 普通模式下使用
cc或S命令修改一整行,该命令会将光标所在行内容删除并进入插入模式,并且会保持之前的代码缩进,也可用于空白行插入时智能缩进使用
4. 普通模式下删除内容
4.1 删除单个字符
- 普通模式下移动光标至需要删除的字符上,使用
x可删除光标所在处字符
4.2 删除整行字符
- 普通模式下移动光标至需要删除的字符行,使用
dd命令可删除光标所在行所有内容(相当于剪切Ctrl+X),可配合数字实现多行剪切,如命令3dd表示剪切3行 ,使用p命令即可粘贴
4.3 删除一个换行符
- 普通模式下移动光标至需要删除换行符的那一行,使用
J命令可删除改行换行符,使下一行内容与该行连接
4.4 删除空行
- 普通模式下移动光标到空行处,使用
dip命令可删除该行及其周围的所有空行
4.5 删除特定符号包含中的内容
- 普通模式下移动光标至特定符号(如括号
{}、[]、()、<>与引号""、'')包含的任意字符上,使用di特定符号命令可删除特定符号包含的内容;如移动光标至内容(“string” + 123)的括号中,使用di(或di)删除()中的所有内容,移动光标至"string"中string的任意字符上,使用di"删除引号""包含的所有内容 - 如果想将特定符号与内容一并删除,可使用
a替换i,如使用da(来删除括号及其其中的所有内容 - 同样也可以将
d替换为c、y、v来修改、复制、选中内容,如使用yi"命令来复制""中的内容,使用ca"命令将引号及其包含的内容删除并进入插入模式来修改
4.6 删除指定行内容
- 普通模式下,输入
:n1,n2 d可删除n1到n2(包含n1与n2)行的内容 - 同样的,普通模式下,输入
:n1,n2 co n3可将n1到n2行的内容复制到n3行下,输入:n1,n2 m n3可将n1到n2行的内容剪切移动到n3行下
5. 普通模式下撤销/重做操作
5.1 撤销操作
- 普通模式下使用
u命令可撤销一次之前的操作
5.2 重做操作
- 不小心撤销太多,可在普通模式想使用
CTRL+R组合键命令重做一次撤销操作
6. 普通模式下查找/替换操作
6.1 查找操作
- 在普通模式下,输入
/与字符的组合命令即可向下查找(相对于光标而言)指定字符相关的文件内容,如/word即向下查看文件中包含 word 字符的内容,输入?与字符的组合命令即可向上查找指定字符相关的文件内容 - 查找之后,按键
n可重复一次查找命令,即重复向下或向上查找一次;按键N可重复一次查找命令,只不过查找方向与n相反 - 查找的内容需要忽略大小写,可输入命令
:set ignorecase设置忽略大小写,输入命令:set noignorecase取消忽略大小写 - 查找指导字符结尾的单词,如指定单词以es结尾,可使用
/es\>;同样的,指定单词以es开头,可使用命令/\<es;只想匹配es这两个字符,可使用命令/\<es\> - 查找内容的
/与?命令,可以使用正则表达式,同样的,需要匹配特殊字符时需要进行转义,即在特殊字符前加\,如匹配英文句号end\.
6.2 替换操作
-
在普通模式下,光标移至某字符,使用命令
r与新字符组合可替换旧字符,如文本he,将光标移至e后方,按ra可将he替换为ha -
在普通模式下,输入命令
:%s/被替换内容/新内容/g完成全文内容替换(将%换为n1,n2来只替换n1行到n2行的内容替换),和查找一样,特殊字符需要转义,只想匹配完整特定字符时,使用\<与\>包含该特定字符,如\<hello\>只匹配完整的hello -
普通模式下使用替换命令完成注释与取消注释,如输入命令
:n1,n2s/^/#/g为在n1行到n2行的行首添加#,这样就完成了注释,#可换为其他符号(需要注意转义);输入命令:n1,n2s/^#//g为把n1到n2的行首的#替换为空来完成取消注释

本文介绍了Vim编辑器的基础操作,包括普通模式下的光标移动、插入内容、删除内容、撤销/重做以及查找和替换等。详细讲解了在普通模式下如何通过快捷键高效地移动光标、插入文本、删除文本,以及如何进行查找和替换操作,是学习Vim操作的入门教程。
851

被折叠的 条评论
为什么被折叠?



