vim模式切换和对应的常用命令
目录
三个模式的切换方式
命令模式命令
vim进入文件是的模式:vim + 文件名
保存并退出:ZZ
分类 | 命令 | 作用 | 说明 |
---|---|---|---|
移动光标 | h、l、j、k | 对应 左、下、上、右 | |
gg | 光标移动文件开头 | ||
G | 光标移动到文件末尾 | ||
0 | 光标移动到行首 | ||
$ | 光标移动到行尾 | ||
123G | 跳转到第123行 | ||
删除 | x | 删除光标后一个字符,相当于 Del | 并不是真的删除,实际上是剪切到剪切板 |
X | 删除光标前一个字符,相当于 Backspace | ||
dw | 删除从光标开始的通类型的字符,包含光标所在字符(英文字符和数字为一类、中文字符为一类、特殊字符为一类) | ||
d0 | 删除光标前本行所有内容,不包含光标所在字符 | ||
D(d$) | 删除光标后本行所有内容,包含光标所在字符 | ||
dd | 删除光标所在行 | ||
n dd | 删除指定的行数 | ||
撤销 | u | 一步一步撤销 | |
Ctr + r | 一步步反向撤销 | ||
黏贴复制 | yy 和 n yy | yy: 复制当前行,n yy 复制 n 行 | |
p | 在光标所在位置向下新开辟一行,粘贴 | ||
P | 从光标所在行, 开始粘贴 | ||
可视模式 | v | 按字移动配合 h、j、k、l 使用; 使用y复制选中内容,esc退出选中 | |
查找 | /word | 从光标所在位置向后查找 word |
N:向上一个移动 n:向下一个移动 |
?word | 从光标所在位置向前查找 word | ||
# | 光标移动到要查询的单词上使用 #也能 进行查找 | ||
替换 | r | 更改当前光标所在位置的单个字符 | |
文本移动 | >> | 光标所在文本行右移 相当于tab | |
<< | 光标所在文本行左移 | ||
查看 man page | Shift+k | 光标移动到函数上,Shift+k 查找对应的函数 | |
n Shift + k | 从第n章开始查找 |
文本模式命令
以下是进入文本模式常用的命令
退出文本模式到命令模式安 esc
分类 | 命令 | 作用 | 说明 |
---|---|---|---|
插入 | i |
在光标前插入 |
进入文本模式的方式 |
I(大写i) | 在行首插入 | ||
a | 在光标后插入 | ||
A | 在行末插入 | ||
o | 在光标的下一行插入 | ||
O | 在光标的上一行插入 | ||
删除 | s | 删除光标所在的字符,并在该位置开始插入 | 进入文本模式的方式 |
S | 删除当前行,并在该开始行插入 | ||
代码补全 | ctrl + n/p | 系统函数或关键字或本文档已存在的函数或变量名 |
n是从列表由上往下移动 p是从下往上移动 |
ctrl + x + l | 整行补全 |
末行模式命令
进入末行模式命令:shift + :
退出末行模式命令:esc × 2次
分类 | 命令 | 作用 | 说明 |
---|---|---|---|
跳转 | :n | 光标跳转到第n行 | |
替换 | :s/abc/123 | 将当前行中的第一个abc替换为123 | 替换一行 |
:s/abc/123/g | 将当前行中的abc全部替换为123 | ||
:%s/abc/123 | 将所有行中的第一个abc替换为123 | 替换全部 | |
:%s/abc/123/g | 将所有行中的abc全部替换为123 | ||
:10,30s/abc/123/g | 将10-30行中的abc全部替换为123 | 替换指定行 | |
执行shell命令 | !+ shell命令 | 末行模式里输入!,后面跟命令 | |
分屏 | sp | 屏幕水平拆分 |
命令:wq 保存并退出光标所在的屏幕
命令:wqall 保存并退出所有屏幕
ctrl + ww 切换两个屏幕 |
vsp | 屏幕垂直拆分 | ||
sp(vsp) + 文件名 | 水平或垂直拆分窗口显示两个不同的文件 |
配置文件位置
系统级配置文件目录:/etc/vim/vimrc
用户级配置文件目录:~/.vim/vimrc