vim的几种工作模式:普通模式、编辑模式、命令模式。

模式

说明

普通模式

默认,使用vim打开一个文件后,默认进入普通模式

编辑模式

在普通模式下,按下“i/I、o/O、a/A、r/R、s/S”进入到编辑模式

命令模式

在普通模式下,输入“:、/、?”进入到命令模式

可视模式

在普通模式下,按v、V、Ctrl+v进入可视模式

多窗口模式

在普通模式下,使用:sp、:sp file进入打开多窗口模块

普通模式:默认模式,打开文件默认为普通模式

按键

说明

↑,k

向上移动

↓,j

向下移动

←,h

向左移动

→,l

向右移动

1G

移动到第一行行首

G

移动到最后一行行首

nG

n表示数字,移动到第n行行首

n+回车

n表示数字,向下移动n行

0,^

移动到行首。行首有空格的情况下,0包括空格,^不包括空格

$

移动到行尾

x/X

x删除当前光标字符,X删除当前光标前一个字符

dd

删除当前行,也表示剪切当前行

d0

删除当前光标左边内容至行首

d$

删除当前光标右边内容至行尾

ndd

n表示数字,向下删除n行

yy

复制当前行

y0

复制当前光标左边内容至行首

y$

复制当前光标右边内容至行尾

nyy

n表示数字,向下复制n行

p/P

p:在下一行粘贴,P:在上一行粘贴

u

撤销上一步操作

Ctrl+r

恢复上一步撤销的操作

.

重复上一步命令

ZZ

保存并退出vim

编辑模式: 按下“i/I、o/O、a/A、r/R、s/S”进入到编辑模式

按键

说明

i/I

插入模式

o/O

o:从下一行开始插入内容,O:从上一行开始插入内容

a/A

a:从光标下一个字符开始插入内容,A:从行尾开始插入内容

r/R

r:只替换当前光标所在的字符,R:从当前光标开始替换内容

s/S

s:删除当前光标所在字符后进入插入模式,S:删除当前行后进入插入模式

命令模式:在普通模式下,输入“:、/、?”进入到命令模式

按键

说明

:w

保存

:w newfile

另存为,newfile文件名

:wq

保存并退出

:wq!

强制保存并退出

:q

退出

:q!

强制退出

:r file

将一个文件的内容插入到当前文件中

:set nu

显示行号

:set nonu

隐藏行号

/name

向下开始搜索"name"。n:选择下一个,N:选择上一个

?name

向上开始搜索"name"。n:选择上一个,N:选择下一个

:s/a/b/g

将当前行中的所有的a替换为b

:n1,n2s/a/b/g

将n1行至n2行之间所有的a替换为b

:%s/a/b/g

全局替换,将文件中所有的a替换为b。

可视模式:进行块选择,从普通模式下进入

按键

说明

v

字符选择,反白显示

V

行选择,反白显示

Ctrl+v

块选择,反白显示

y

复制反白部分

d

删除反白部分

多窗口模式:从普通模式下进入,使用:sp、:sp file 打开多窗口模式

按键

说明

:sp

再打开一个窗口并显示同一个文件

:sp file

再打开一个窗口并显示file文件

Ctrl+w

执行窗口命令的组合键

Ctrl+w w

先按下Ctrl+w,再按w,向下切换窗口,循环切换

Ctrl+w j

先按下Ctrl+w,再按j,向下切换窗口,切换到最后一个窗口后不能再向下切换

Ctrl+w k

先按下Ctrl+w,再按k,向上切换窗口,切换到第一个窗口后不能再向上切换

Ctrl+w c

先按下Ctrl+w,再按c,关闭当前窗口

Ctrl+w o

先按下Ctrl+w,再按o,关闭除当前窗口外的其它窗口