移动:
单词:
右手四指h,j,k,i
w(W)下个(长)单词首字母 //长单词为空格划分
e(E) 下个(长)单词尾字母
b(B) 上个(长)单词首字母
行:
0 到行首
^ 到行首
$ 到行尾
% 跳转到与当前光标下的括号匹配的哪个括号上
<行号>G 到指定行
nf<字母> 移动到当前行上的第n个<字母>处 //F向前
句/段:
( 到句首
) 到句尾
{ 到段首
} 到段尾
页:
Cirl+ B 到上页
Cirl+ F 到下页
gg 到文章开头
G 到文章尾部
<n>% 移动到文章的n%处
Cirl+ u文本向下滚动半屏
Cirl+ d窗口向上滚动半屏
zz 当前行放在正中
Ex模式:
一般命令:
w保存
q退出
!强制执行
正则:
%s替换
如:%s/args1/args2/gic //g全部替换i不区分大小写c每次替换要求确认
%s#args#args2#gc 同上,并且参数中可以使用/等
/ 向下搜索
n向后重复搜索
N向前重复搜索
? 向上搜索
*# 分别是向下和向上搜索光标所指的词
编辑:
x 删除当前光标所在的字符
J 将下一行接到当前行行末
r 替换原字符
yy 复制一整行
nyy 复制n行
. 重复上一命令
dw 删除到下一个单词词首
d) 删除到下一个句首
d} 删除本段剩余部分
u 恢复一次命令
ctrl + r 撤销一次u命令
3w 向后找3个单词
12b 向前找12个单词
4j 向下4行
d3w 删除光标后3个单词
d2j 删除当前行和下两行
插入模式:
i 光标处字符之前插入
I 行首插入
a 光标字符之后插入
A 行末插入
o 行下生成空行
O 行上生成空行
cc 以新行替换当前行
c0 替换当前位置到行首
c$ 替换当前位置到行尾
cw ce c) c} 联合使用
缓冲控制:
:sp文件名 在新窗口中打开文件
Cirl+ w两次 在窗口间切换
可视模式:
v 进入可视化模式
y 复制
d 剪切
r<字符>所有字符替换为新字符
uU ~ 所有字母变为小写,大写,反转大小写
>< = 分别是缩进,反缩进,文本对齐
回到命令模式之后
p 复制到光标之后
P 复制到光标之前
可视阻塞模式,进行列操作:
Cirl+ v 进入改模式
使用移动以及其它命令可以同时对几列进行操作
其它设置:注set设置可以在.vimrc中同样设置
:setnu 加入行号
:set nonu 取消行号
:set autoindent 允许缩进
:set noai 取消缩进
:set tabstop=4 手动设置缩进
n + cirl + w -/+ //窗口高度减少或者增加n行
n + cirl + w </> //窗口宽度减少或者增加n列