jklh
上下左右
<ESC>
退出
:q!
推出不保存
x
删除本个字符
i
在本个字符前插入文本
A
添加文本在行尾
a
添加文本在本个字符后
:wq
保存退出
dw
从光标处删除到单词末尾及其后空格
d$
删除此字符到行尾
de
删除此字符至单词末尾,不带空格
2w
光标向后移动2个单词
3e
光标向后移动到第3个单词末尾
0
移动光标到首行
d2w
删除2个单词
dd
删除当前行
2dd
删除2行
u
撤销上一个命令
U
撤销对整行的修改
CTRL-R
重做被撤销的命令
p
将最后一次删除的内容置于光标之后(行在先行 单词在下个单词)
r
替换当前位置的一个字符
ce
改变文本到单词末尾
cw
c$
修改文本到行末
cw
修改当前单词
c2w
修改当前单词及下一个
CTRL-G
显示当前编辑文件所在行位置及文件信息
G
直接跳到文件最后一行
gg
可以跳到第一行
499 G
返回第一次按下CTRL-G的位置
/
正向搜索
?
反响搜索
CTRL-O
回到之前的位置
CTRL-I
跳到较新的位置
``% 配对 )、】、}
替换文本
s/old/new
只改变所在行的第一个匹配
s/old/new/g
全行匹配
#,#s/old/new/g #,#
代表替换操作若干行的首尾行号
%s/old/new/g
替换整个文件的每个匹配串
%s/old/new/gc
找到整个文件的每个匹配串,并且提示是否替换
n
指向下一个匹配
N
指向上一个匹配
! dir
执行外部命令dir
w FILENAME
将文件的改动保存到文件中
v
选中模式
r FILENAME
向当前文件插入另位的内容
:r !ls
读取ls命令的输出,并防止在光标下面
o
在光标下方打开一行进行插入
O
在光标上方打开一行进行插入
e
光标移动到下个单词末
R
连续替换多个字符
y
复制 p
粘贴
j$
移动光标到下一行的末尾
yw
复制一个单词
设置累命令选项
/ignore
重复查找改词 n 下一个 N上一个
:set ic
忽略大小写(Ignore Case)
:set hls is
(hls 高亮显示所有匹配 is 查找短语是显示部分匹配) 设置hlsearch 和incsearch这两个选项
:set noic
禁用忽略大小写
:nohlsearch
移除匹配项高亮
/ignore\c
ignore为查找的匹配想(单词忽略大小写)
:set nocp
设置非兼容模式
:e CTRL-D
vim会显示以e开始的命令列表
<TAB>
自动补全(例如 : cd 显示当前目录先所有文件夹 TAB 自动补全)
CTRL-W
窗口之间跳转
:q
关闭帮助窗口