(码字不易,关注一下吧w~~w)
命令模式:
当我们按下esc键时,我们会进入命令模式;当使用vi打开一个文件时也是进入命令模式。
光标移动:
1 保存退出:ZZ
2 代码格式化:gg=G
3 光标移动: h--左移 l--右移 j--下移 k--上移
4 移动一个单词: w
5 光标移动到文件开头:gg
6 光标移动到文件末尾:G
7 移动到行首:0
8 移动到行尾:$
9 跳转到n行:nG
删除命令:
1 删除光标所在的字符:x
2 删除光标前一个字符:X
3 删除光标所在的单词:dw(光标要在单词开头)
4 删除光标前所有内容,不包含光标所在字符:d0
5 删除光标后所有内容,包含光标所在字符:d$或则D
6 删除光标所在行:dd 本质为剪切
7 从光标当前行向下删除n行:ndd(包含光标行)
8 ctrl+v/v :使用h j k l移动选择内容,然后按d删除。crtl+v为列模式,v为非列模式
撤销命令和反撤销命令:
1 一步步撤销:u 相当于ctrl+z
2 反撤销:ctrl+r 相当于ctrl+y
复制粘贴:
1 复制当前行:yy
2 复制n行:nyy
3 将光标所在位置向下新开辟一行,并粘贴:p
3 将光标所在位置向上新开辟一行,并粘贴:P
4 剪切操作:按dd或者ndd删除,将删除行保存到剪切板中,然后按p/P就可以粘贴了
可视模式:
v/ctrl+v 使用d删除 使用y复制 使用p粘贴到光标后面 使用P粘贴到光标前面
查找命令:
想要查找xxx内容 :/ xxx 光标会移动到xxx处,按n向下寻找相同的xxx,按N向上寻找相同的xxx
替换命令:
1 替换当前字符:r
2 替换当前行光标后的字符
切换文本输入模式:
1 光标前插入:i
2 光标后插入:a
3 在光标所在行的行首插入:I
4 在光标所在行的行尾插入:A
5 在光标所在行的下面新创建一行,行首插入:o
6 在光标所在行的上面新建一行,行首插入:O
7 删除光标所在的字符,从光标当前位置插入:s
8 删除光标所在行,从行首插入:S
9 按列模式插入:先按ctrl+v进入列模式,按hjkl移动选定某列,按I想前插入,然后插入字符,最后按两次esc退出
末行模式的操作:
从命令模式切换到末行模式按 :
保存退出:
退出:q
强制退出,不保存修改内容:q!
保存修改内容,不退出:w
保存并退出:wq/x
替换操作:
:s/word1/word2 光标所在行的第一个word1替换为word2
:s/word1/word2/g 光标所在行所有word1替换为word2
:m,ns/word1/word2/g 将第m行到n行的所有word1替换为word2
:%s/word1/word2/g 当前文件所有word1替换为word2
:%s/word1/word2/gc 当前文件所有word1替换为word2,但每次需要用户确认
快速翻屏:
向下翻半屏,光标向上移动:ctrl+u
向上翻半屏,光标向下移动:ctrl+d
向上翻一屏:ctrl+f
向后翻半屏:ctrl+b
分屏操作:
sp:当前文件水平分屏
vsp:当前文件垂直分屏
sp 文件名 :当前文件与该文件水平分屏
vsp 文件名 :当前文件与该文件垂直分屏
ctrl+w+w :在窗口间切换光标
wall:保存
wqall:保存退出
qall!强制退出
:!shell 可以执行shell命令
:set nu 显示行数
:set tabstop=4 设置缩进4个空格
:set shiftsidth=4 设置gg=G缩进4个空格