# Vim 常用快捷键

#### 光标移动

1. hjkl 分别对应左、下、上、右
2. a 光标下一个并进入输入模式，A 句尾并进入输入模式
3. o 在当前行下新插入一行并进入插入模式，O 在当前行上面插入一行并进入插入模式
4. 0 到这一行的最开始 Ctrl+6 到这一行的第一个字符处 Ctrl+$ 到行尾
5. 在插入模式下的 Ctrl+w 删除光标前的一个单词
6. dd 删除一行
7. 在插入模式下 Ctrl+h 等同于删除键 <-
8. 在插入模式下的 Ctrl+o 可以退出插入模式进入正常模式，但只能执行一个命令并再次进入插入模式。

#### 关闭窗口

1. ZZ 保存并关闭
2. ZQ 不保存并并关闭

#### 批量注释

1. Ctrl+v 是进行块选择，可以直接进行列块选择，然后大写 I 进行插入注释，d 删除注释。win 中键冲突，改为 Ctrl+q
2. v 从光标开始到光标结束进行选择，V 按行进行选择，Ctrl+v 是按一个矩形进行选择

#### 翻页

1. 翻页，Ctrl+B和Ctrl+F，分别代表 Backward 和 Forward。
2. 翻半页，Ctrl+D，Ctrl+U，down，up
3. 只关心当前屏幕的话，可以快速移动光标到屏幕的顶部、中间和底部：用 H（High）、M（Middle）和 L（Low）就可以做到
4. 移动屏幕使光标居中 zz

#### 多窗口

1.  :sp 横向打开窗口 :vsp 纵向打开窗口
2.  窗口切换 Ctrl+w+w ，或Ctrl+w+h,j,k,l 或Ctrl+w+上下左右
3.  关闭窗口  Ctrl+w+q

#### 执行shell

1. Ctrl+z将vim暂时挂起，fg恢复vim任务，fg %1  fg%2 可选择要恢复的任务
2. :terminal 打开一个终端，exit 退出终端，Ctrl+w +上下左右键 切换窗口  :vertical :terminal 列示显示终端
3. !! 或 :read 将执行的命令输入到当前行
4. :! 执行一条shell 命令

#### 自增自减

1. 如果光标所在处是一个数字的话，Ctrl+a 自增，Ctrl+x 自减这个数字
