Vim常用操作总结

普通模式

>G      增加当前行到文档末尾处的缩紧层级
$       移动到本行的末尾
.       相当于一个很小的宏,记住上次的命令,用来重复执行上一次修改
;       重复查找上一次f命令查找到的字符
,       和;相反,跳回到上一次查找到的字符
:       ex命令
{       跳到段首
}       跳到段尾
(       跳到句首
)       跳到句尾
~       转换光标上字符的大小写
%       括号匹配
/       在文档里查找下一次匹配
:%s/content/copy/g      将全文中的content替换成copy
&       回退本行中的替换
<       减小缩进
>       增加缩进
=       自动缩进

a       在光标后面插入
A       跳到行尾并进入插入模式
b       向前移动一个单词,光标停到单词开头
B       光标跳到前一个单词
c       重复删除多行/多元素,需要配合hjkl来使用,如3cj,2ch
C       修改至末尾(删除光标到行尾的所以并进入插入模式)
d       删除多行,dd删除一行,2dd删除2行
D       删除光标所行尾,但不进入插入模式
e       跳到单词末尾
E       跳到单词末尾
f       行内字符查找,fs跳到下一个出现s的位置
F       行内字符反向查找,与f的作用查找反向相反
g       gg跳到文档的第一行
G       跳到文档末尾
h       右键
H       光标跳到屏幕顶行
i       在光标之前插入
I       到行首插入
j       下键
J       合并两行
k       上键
K       帮助,暂时关闭vim切换到命令行
l       右键
L       光标跳到屏幕底部
m       局部标记光标所在位置,具体不知道怎么用
M       光标跳到屏幕中间
n       查找下一个
N       查找上一个
o       在下一行插入
O       在上一行插入
p       粘贴到下一行
P       粘贴到上一行
q       录制宏,不知道干嘛的
Q       切换到ex模式,不知道干嘛的
r       取代,ra用a将当前光标所在的字符替换,不进入插入模式
R       替换模式,将字符安替换并进入插入模式
s       删除当前光标所在的字符并进入插入模式
S       删除行并进入插入模式
t       ti移动光标到当前行,当前光标后面的第一个i前面
T       不知道
u       撤销上一次操作(全文撤销)
U       撤销行内命令
v       可视模式,可以直接选择多行
V       可视模式
w       下一个单词
W       下一个单词
x       删除光标所在的字符
X       退格
y       yy复制一行,4yy复制4行
z       附加命令
Z       退出

c       重复删除多个数据
cw      删除本行从光标开始到结束的字符,并进入编辑模式重新输入
dw      删除从光标所在到单词结束的
dapw    删除整个单词
dpb     删除从光标开始到单词开头的位置

 

插入模式

<C u>   删除至行首
<C r>=  做数值计算

 

可视模式

V       面向行的可视模式
v       面向字符的可视模式
<C v>   面向列的可视模式
gv      重选上次的高亮区域

 

命令行模式 

:       进入命令行模式
:edit   读文件
:write  写文件
:sp     横向分割窗口
:vsp    纵向分割窗口
:[range]delete x        将range指定的范围的行删除到寄存器x中(用;分割范围,下同)
:[range]yank x  将range指定的范围的行复制到寄存器x中
:[line]put x    将寄存器x中的内容粘贴到line指定的行后面
:[range]copy[address]   将range范围内的值拷贝到address指定的行下面
:[range]move[address]   将range范围内的值移动到address指定的行下面
:1      文件的第一行
:$      文件的最后一行
:0      虚拟行,文件的第一行上方
:.      代表当前行
:![command]     不退出vim执行shell命令,相当于只能执行一次shell命令
:shell  启动一个交互的shell会话,结束后输入exit可回到vim
:read![command] 在shell中执行command命令,但将结果输出到vim中

 

posted @ 2018-08-28 01:37  第五  阅读(162)  评论(0编辑  收藏  举报