普通模式:
左下右上:hjkl
w前进一个单字
b后退一个单字
ctrl+u向上翻半页
ctrl+d向下翻半页
ctrl+f向上翻一页
ctrl+b向下翻一页
H文本第一行
M文本中间行
L文本最后行
^光标移动到当前行第一个字符(非空白字符)
$光标移动到当前行最后一个字符
0光标移动到当前行第一个字符(包括所有字符)
G光标移动到最后一行
nG光标移动到第n行
n+Enter向下移动n行
~改变光标处字符大小写
guu整行字符变小写
gUU整行字符变大写
guw,gUw,gub,gUb
ddp 交换上下行
gg=G 格式化所有代码
gg到行首
==格式化当前行
/word向下查找word
?word向上查找word
n下一个
N上一个
x为删除当前字符
nx删除连续向后n个字符
dd删除当前行内容
dG删除光标到最后一行
d0删除光标到行首内容
d$删除光标到行末内容
ndd删除光标向下n行内容
dnG删除光标到第n行内容
y复制(yank)
yy复制当前行内容
yG复制当前行到最后一行内容
y0复制光标到行首内容
y$复制光标到行末内容
nyy复制光标向下n行内容
ynG复制光标到第n行数据
p粘贴到下一行
P粘贴到上一行
c修改(change)
>缩进
<反缩进
.重复上一次操作
u undo
ctrl+r redo
末行模式:
set cindent shiftwidth=4设定普通模式下>》移动为8个字符
n1,n2s/word1/word2/g 在n1到n2行查找word1,并替换成word2
n2改为$就是最后一行
g改为gc则需要用户确认
忽略大小写
set ingorecase or /searchword\c
查找统计个数
:%s/searchword//gn
全选:
gg行首,v转为可视模式(visual mode)
G最后一行前一个光标,然后要$选中剩余的行
普通模式->插入模式
a光标前,A行首
i光标后,I行末
o下一行,O上一行