Vim

MyVim

1. 基础导航命令(光标移动)

命令 含义
h 左移一个字符
l 右移一个字符
j 下移一行
k 上移一行
w 移动到下一个单词的开头
e 移动到当前/下一个单词的结尾
0(零) 移动到行首
^ 移动到本行第一个非空白字符
$ 移动到行尾
G 移动到文件最后面
gg 移动到文件最前面

2. 插入模式

命令 含义
i 在光标插入
I 在当前行的第一个非空字符前插入
a 在光标插入 append
A 在当前行行尾插入
o 在当前行下方新起一行并插入
O 在当前行上方新起一行并插入
<Esc> 退出插入模式,回到普通模式

3. 删除命令

命令 含义
x 删除当前光标所在字符
X 删除光标的字符
dw 删除从光标到下一个单词开头(不含空格)
de 删除从光标到当前/下一个单词结尾
d$ 删除从光标到行尾
dd 删除整行
d0 删除至行首(不包括光标)

4.修改命令(删除 + 插入)

命令 含义
cw 修改当前单词(删掉当前词,进入插入)
ce 修改至单词结尾
c$ 修改至行尾
cc 修改整行(等价于 S)
:s/old/new ( 文本替换 substitute) 基本替换:只替换该行第一次出现的 old
:s/old/new/g
(g=global→ 全部都替换,不加只替换第一个)
全部替换:将该行所有出现的 old 替换为 new
:10,20s/thee/the/g 第几行替换
:%s/thee/the/g 全文件替换
:%s/old/new/gc —>confirmation 每次替换前请求我的确认
O ————–>大写 此行上方插入行
o ————–>小写 此行下方插入行
r—————> 替换单个字母
R 不退出一直从光标开始替换

5.撤销与重做

命令 含义
u 撤销上一步操作
U 撤销当前整行的所有更改
CTRL-R 重做被撤销的操作(undo 的 undo)

6.保存与退出

命令 含义
:w 保存文件
:q 退出 Vim
:q! 不保存退出(强制退出)
:wq 保存并退出
ZZ :wq(不需输入冒号)

7. 其他命令

命令 含义
:help 打开 Vim 的帮助系统
:!cmd 执行外部命令(如 :!ls)
~ 切换字符大小写
. 重复上一次普通模式下的操作
r<char> 替换光标下的字符为 <char>
J 合并当前行和下一行

8. 查找命令

/ word (/表示搜索模式) 跳转到word前面
n 继续向下找下一个匹配项(next)
N 向上找上一个匹配项(Next,反方向)
? word 表示从当前位置向上搜索
CTRL-O 返回“之前”的光标位置(像网页的“后退”)
CTRL-I 回到“之后”的光标位置(像网页的“前进”)
%+[]/()/{} 自动跳转到另一边的括号
:set ic 忽略大小写
:set hls is 开启高亮和增量搜索
:set noic 关闭忽略大小写

image-20250527172847012

9. 执行外部命令

1
:!外部命令

::进入命令模式

!:告诉 Vim“我要执行一个 shell 命令”

lsdir 等:正常的终端命令(比如列出目录)

10. 选择并保存文本

image-20250527171122924

11.复制和粘贴

v进入选中 , y表示赋值yank , p 表示粘贴paste

y————>yank 表示复制
yw yank one word
yy yank whole line
p paste粘贴

12 . 帮助文档

:help w(窗口相关)

:help c_CTRL-D(命令行补全)

:help insert-index(插入模式索引)

:help user-manual(用户手册)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
:help user-manual       —— Vim 官方用户手册,从基础到高级都有
:help quickref —— 快速参考指南,命令一览
:help motion —— 光标移动相关命令
:help insert —— 插入模式操作
:help visual —— 可视模式操作
:help undo —— 撤销和重做
:help registers —— 寄存器(剪贴板)管理
:help copy —— 复制、粘贴命令(y, p等)
:help search —— 搜索命令和选项
:help options —— 各种配置选项(比如 ignorecase)
:help folding —— 折叠代码
:help mapping —— 快捷键映射
:help syntax —— 语法高亮
:help autocommand —— 自动命令事件
:help buffers —— 缓冲区管理
:help windows —— 窗口管理
:help tabs —— 标签页管理

vimtutor

image-20250528232724480

image-20250528234233342

image-20250528235301457

image-20250529092752364

命令 作用
:s/旧/新/ 当前行替换第一个
:s/旧/新/g 当前行替换全部
:#,#s/旧/新/g 替换指定行范围中全部
:%s/旧/新/g 替换整个文件中全部
:%s/旧/新/gc 替换整个文件,并逐个确认