* VIM普通模式
① 移动光标 ② 复制 粘贴 ③ 剪切 粘贴 删除 ④ 撤销与恢复
移动光标
光标上下左右移动
移动多行
1 2 3 4
| 4h #左移4格 4j #上移4行 4k #下移4行 4l #右移4格
|
跳转到单词末尾或者开头(下一个空格前)
跳转到文档开始或末尾
1 2
| gg # 跳转到文档开头 G (shift + g) # 跳转到文档末尾
|
上下翻页
1 2 3
| ctrl + u #向上翻页 ctrl + d #向下翻页
|
快速到最近的某个字母(区分大小写)
1 2 3
| fu #到最近1的u fc #到最近的c fK #到最近的K
|
复制粘贴
复制
y
1 2
| yaw # y(yank) aw(a word)
|
1 2 3 4 5 6 7 8 9
| yy # 复制本行
nyy # 复制n行 包括当前行
y4j # 向下复制5行 包括当前行 y4k # 向上复制5行 包括当前行 y4h # 向左复制4个字符 不包括光标在闪烁那个字符 y4l # 向右复制4个字符 包括光标在闪烁那个字符
|
粘贴
p
剪切删除
d命令其实可以看成剪切,不复制出来就变成删除了。
删除行
1 2 3 4 5 6 7 8
| dd # 删除光标所在行 ndd # 删除n行 包括当前行
d4j # 向下删除5行 包括当前行 d4k # 向上删除5行 包括当前行 d4h # 向左删除4个字符 不包括光标在闪烁那个字符 d4l # 向右删除4个字符 包括光标在闪烁那个字符
|
替换
c
1 2
| cc # 删除行,并且进入编辑模式 c4j # 删除下4行+本行,并且进入编辑模式
|
*
撤销恢复
文件操作
* VIM 可视化模式(VISUAL)
v
进入可视化模式后移动光标即可选中该部分内容进行操作,例如:
客制化
文件夹,文件,管理(树形结构)
vim学习网站
VIM GAME
常用命令
🔍 查找与跳转类
操作 |
命令 |
功能 |
向下查找 |
/关键词 |
向下搜索 |
向上查找 |
?关键词 |
向上搜索 |
查找下一个 |
n |
重复上一次查找方向 |
查找上一个 |
N |
与 n 相反方向查找 |
精准跳行 |
:数字 |
跳转到某行(如 :25 到第25行) |
跳转当前函数开始 |
[[ |
到上一个函数定义 |
跳转当前函数结束 |
]] |
到下一个函数定义 |
✂️ 复制/粘贴/删除
操作 |
命令 |
功能 |
复制整行 |
yy |
Yank(复制)一整行 |
复制多行 |
3yy |
复制 3 行 |
粘贴 |
p |
粘贴到当前行/位置后 |
粘贴到前面 |
P |
粘贴到当前行/位置前 |
删除当前行 |
dd |
删除整行(并放入剪贴板) |
删除多行 |
3dd |
删除 3 行 |
🖊 编辑文本
操作 |
命令 |
功能 |
进入插入模式 |
i |
当前光标前插入 |
行首插入 |
I |
当前行行首插入 |
行末插入 |
A |
当前行行末插入 |
开新行 |
o |
下一行插入新行 |
上一行插入 |
O |
上一行插入新行 |
撤销操作 |
u |
撤销 |
重做操作 |
Ctrl + r |
重做 |
⏬ 移动光标(导航)
操作 |
命令 |
功能 |
移动到行首 |
0 |
数字零,跳转行首 |
移动到行尾 |
$ |
跳转行尾 |
下一个单词 |
w |
移动到下一个词首 |
上一个单词 |
b |
移动到上一个词首 |
向后跳一个词尾 |
e |
跳到词尾 |
跳转匹配括号 |
% |
例如从 ( 跳到 ) |
🔄 替换与格式
操作 |
命令 |
功能 |
替换字符 |
r<字符> |
替换当前字符为新字符 |
替换整行 |
cc |
删除本行并进入插入模式 |
修改当前单词 |
cw |
删除单词并插入新内容 |
缩进 |
>> / << |
增加 / 减少缩进 |
自动缩进格式化 |
gg=G |
整个文件格式化缩进 |
🗂 多文件 / 多窗口
操作 |
命令 |
功能 |
打开文件 |
:e 文件名 |
打开另一个文件 |
保存文件 |
:w |
写入文件 |
保存退出 |
:wq 或 ZZ |
保存并退出 |
不保存退出 |
:q! |
强制退出 |
分屏 |
:vsp 文件名 |
垂直分屏打开文件 |
窗口切换 |
Ctrl + w + h/j/k/l |
切换到左/下/上/右窗口 |
🧠 Bonus 技巧
操作 |
命令 |
功能 |
查看文件编码 |
:set fileencoding? |
|
设置行号 |
:set number |
|
取消行号 |
:set nonumber |
|
语法高亮 |
:syntax on |
|
显示不可见字符 |
:set list |
|
是否要我给你一张快捷键总结图?或者针对某类操作(比如查找替换、代码缩进)出个练习小册?