Vim常用快捷键

vim 的常用快捷键



光标移动

h / l / j / k 左/下/上/右 移动
nj / nl 上/下移动n行
ctrl + b / f 上/下翻一页
ctrl + u / d 上/下翻半页
0 / $ 移动到行首/行尾
^ 移动到行首第一个字符处
( / ) 移动光标到上/下一个句子
{ / } 移动到段首/段尾
b / w 移动到上/下一个词
gg / G 移动到文档开始/结尾
% 移动到匹配的{}.().[]处(光标必须在其上)
ngg 或 nG 或 :n 跳到第n行
H / M / L 移动光标到屏幕顶端/中间/底部

查找替换

# / * 向前/后查找关键字(光标必须在其上)  
fx, Fx, tx, Tx 在当前行查找字符x  
:s/s1/s2 将下一个s1替换为s2  
:%s/s1/s2 全部替换  
:s/s1/s2/g 只换当前行  
:n1,n2 s/s1/s2/g 替换 n1~n2 行  
:/string 搜索字符串string, 搜索下一处为n,搜索上一处为N  
:?string 搜索字符串string, 搜索下一处为N,搜索上一处为n  

编辑代码

i / a 光标前/后插入
I / A 行首/行尾插入
o / O 后/前一行插入
s / S 删除字符插入 / 删除行插入
x 删除当前字符
D / C 删除到行尾
dd / cc 删除行() / 删除行并进入插入模式(等同于S)
dw / cw 删除单词 / 删除单词并进入插入模式
x或dl / s或cl 删除字符 / 删除字符并进入插入模式
p / xp / ddp 粘贴 / 交换两个字符 / 交换两行
y / yy或Y 复制 / 复制一行
u 撤销
ctrl + r 重做
J 合并两行

窗口操作

:split / vsplit 分割一个窗口
:new / ?vnew 创建一个窗口
:close 关闭当前窗口
:only 仅保留当前窗口
ctrl + w,h 到左边窗口
ctrl + w,l 到右边窗口
ctrl + w,k 到上边窗口
ctrl + w,j 到下边窗口
ctrl + w,t 到顶部窗口
ctrl + w,b 到底部窗口