保存并退出
不保存退出编辑
方向键
撤销
恢复
删除
x
de
从光标位置删除到单词末尾
dw
从光标删除至单词的末尾
cw
从光标删除至单词的末尾(并进入”插入模式”)
daw
删除光标所在的单词(delete a word)
caw
删除光标所在的单词(delete a word),并进入”插入模式”。
d0
从当前光标删除到行首
dd
3dd
C
功能和D相同,区别在于完成删除操作后进入 INSERT MODE
cc
删除当前行,然后进入INSERT MODE
查找/搜索
/要查找的内容
在当前文件中查找该内容(eg. /name),另外还可以↑↓进行查看历史搜索记录。
n
查找下一个。
N
查找上一个。
?要查找的内容:向上查找
*
直接搜索光标所在的单词。
跳转
0(数字0)
$
b
e
G
gg
10gg
10+
光标下移10行
10-
光标上移10行
屏幕滚动
Ctrl + U
Ctrl + D
向下(down)滚动(半屏)
Ctrl + F
向上(forward)滚动(一屏)
Ctrl + B
向下(back)滚动(一屏)
o(英文小o)
在光标下方新开一行并将光标置于新行行首,进入插入模式。
O:同上,在光标上方。
a:在光标之后进入插入模式。
A:同上,在光标之前。
Ctrl + O
上次光标停留位置,重复按可以回退更多步
Ctrl + I
跳转到较新的位置
%
找配对的括号 )、]、}等
- 把光标放在本节下面标记有 —> 那一行中的任何一个 (、[ 或 { 处。
- 接着按 % 字符。
- 此时光标的位置应当是在配对的括号处。
- 再次按 % 就可以跳回配对的第一个括号处。
- 移动光标到另一个 (、)、[、]、{ 或 } 处,按 % 查看其所作所为。
替换
R
进入替换模式,输入一个字符替换光标所在位置的字符。
输入 cw,改变当前位置
要改变文本直到一个单词的末尾,请输入 ce
:%s/old/new/g
全局替换所有的 old 为 new。
%:表示整个文件
:%s/xxx//gn
不进行替换,只显示符合条件的 xxx 的个数。
复制粘贴
yy
3yy
yaw
p
粘贴
高阶玩法
set xxx
set nu
显示行信息
设置高亮
:set hlsearch 设置高亮
:set nohlsearch 关闭高亮
:nohlsearch
关闭当前已经设置的高亮
Ctrl + G
显示当前编辑文件中当前光标所在行位置以及文件状态信息。
:! xxx
紧接着输入一个外部命令可以执行该外部命令。
:!dir 或者 :!ls 用于显示当前目录的内容。
:!del FILENAME :!rm FILENAME - 用于删除名为 FILENAME 的文件。:w FILENAME 可将当前 VIM 中正在编辑的文件保存到名为 FILENAME 的文 件中。
:w temp.bak 可将当前编辑文件中可视模式(v montion)下选中的内容保存到文件 temp.bak** 中。**
:r demo.txt 可提取磁盘文件 **demo.txt** 并将其插入到当前文件的光标位置 后面。
:r !dir 可以读取 dir 命令的输出并将其放置到当前文件的光标位置后面。
.
重复上一次操作