VIM常见功能

请注意,本文编写于 1928 天前,最后修改于 1928 天前,其中某些信息可能已经过时。

前言

还别说,vim确实看起来挺蠢的,但是用起来真的很香。特备是针对没有小键盘和鼠标的机器。

特别适合那种外带只有一个笔记本,不带鼠标的人。所以特此再次列出一些常用功能

全部功能

:q 退出
:q! 强制(不保存)退出
:wq 保存退出
:set nu 显示行号
:set nonu 隐藏行号

hjkl 左上下右

Ctrl + f 翻到下一页(向前翻页) front
Ctrl + b 翻到上一页(向后翻页) back
Ctrl + u 向前翻半页
Ctrl + d 向后翻半页

^ 移到行头
$ 移到行尾
w 下一个单词
b 前一个单词
e 下一单词尾
#G 跳到某一行
i 光标前插入
a 光标后加入
A 在行末加入
o 另起一行加入
O 上一行加入

cw 删除一个单词(一部分不包括空格) 吃掉一个 word
c$ 删除一行到行尾 刚写的一行被删了,钱也拿不到了
c^ 删除一行到行头 往上吃,一直吃到头
x 删除一个字符 看你不爽就打上“x”

dd 删除一行
dw 删除单词到尾部(包括空格)
de 删除单词到尾部(不包括尾部空格)
d$ 删除当前到行尾的所有字符
d^ 删除当前到行首的所有字符
J 合并当前行
u 撤销上次操作
U 撤销当前行所有操作
Ctrl + r 恢复undo 前

yy 复制当前行整行的内容到vi缓冲区
yw 复制当前光标到单词尾字符的内容到vi缓冲区
y$ 复制当前光标到行尾的内容到vi缓冲区
y^ 复制当前光标到行首的内容到vi缓冲区
p 读取vi缓冲区中的内容,并粘贴到光标当前的位置(不覆盖文件已有的内容)

/word 从上而下查
?word 从下而上查找
n 定位下一个匹配的
N 定位上一个匹配的

:s/1/2 搜索当前行第一个1并用2代替 search
:s/1/2/g 搜索当前行所有的1并用2代替 global
:#,#s/1/2/g 在#,#间搜索所有1并用2替换
:%s/1/2/g 在整个文档中将1替换为2 100%(全部)
:s/1/2/c 每次替换都给出提示确认 cue提示

vim 1.txt 2.txt 3.txt 同时打开多个文档
:args 显示多文件信息(会在末行提示当前打开了哪些档)
:next 切换到下一个文件
:prev 切换到上一个文件
:first 定位首文件
:last 定位尾文件
Ctrl + ^ 快速切换到编辑器中切换前的文件

添加新评论

已有 2 条评论

vim太高端了,像我这种弱鱼,用不来用不来(瑟瑟发抖抱着自己)

⑨BIE ⑨BIE 回复 @LingC

问题是用的真的爽啊qwq。特别是没有小键盘没有鼠标的笔记本的时候