三种模式
模式间的转换


一般模式
也叫默认模式、普通模式(默认进入vim所处的模式),主要进行删除、复制、粘贴操作。
| 语法 | 功能描述 |
|---|
| yy | 复制光标当前一行 | | 数字 yy | 复制一段(从光标当前行向下数 n 行) | | p | 从光标下一行开始粘贴(paste) | | dd | 删除光标当前行(delete) | | 数字 dd | 删除一段(从光标当前行向下数 n 行) | | u | 撤销上一步(undo) | | y $(shift+4) | 复制从光标到行尾的字符(包含光标、左闭右开) | | y ^(shift+6) | 复制从行头到光标的字符(不包含光标、左闭右开) | | yw | 复制一个单词 | | dw | 删除一个单词 | | x | 剪切一个字母,相当于 del | | X | 剪切一个字母,相当于 Backspace | | r | 替换一个字符(replace) | | R | 替换模式 |
光标移动命令
| 语法 | 功能描述 |
|---|
| ^ (shift+6) | 移动到行头 | | $ (shift+4) | 移动到行尾 | | w | 移动到下一个单词词头(word) | | e | 移动到当前词尾(end) | | b | 移动到上一个单词词头(begin) | | gg | 移动到页头 | | G | 移动到页尾 | | H | 屏幕顶行 | | L | 屏幕底行 | | 数字+shift+g | 移动到目标行 |
编辑模式
进入编辑模式
| 按键 | 功能 |
|---|
| i | 当前光标前 | | a | 当前光标后 | | o | 当前光标行的下一行 | | I | 光标所在行最前 | | A | 光标所在行最后 | | O | 当前光标行的上一行 | | Esc | 退出编辑模式 |
命令模式
也叫指令模式
| 命令 | 功能 |
|---|
| :w | 保存 | | :q | 退出 | | :wq | 保存并退出 | | :q! | 不保存强制退出 | | :set nu | 显示行号 | | :set nonu | 隐藏行号 | | /要查找的词 | n 查找下一个,N 往上查找 | | :noh | 取消高亮显示 | :s/old/new | 替换当前行匹配到的第一个 old 为 new | :s/old/new/g | 替换当前行匹配到的所有 old 为 new(global) | :%s/old/new | 替换文档中每一行匹配到的第一个 old 为 new | :%s/old/new/g | 替换文档中匹配到的所有 old 为 new |
|