光标移动
按ESC 进入普通模式,在该模式下按下 h,j,k,l 可以移动光标
按键 | 说明 |
---|---|
h | 左 |
l | 右 |
j | 下 |
k | 上 |
w | 移动到下一个单词 |
b | 移动到上一个单词 |
进入插入模式
按键 | 说明 — |– i | 当前光标处进行编辑 I | 在行首插入 A | 在行末插入 a | 在光标后插入编辑 o | 当前行后插入一个新行(小写的o) O | 当前行前插入一个新行(大写的o) cw | 替换从光标所在位置到一个单词结尾的字符
退出 Vim
按键 | 说明 — |– :q! | 强制退出,不保存 :q | 退出 :wq! | 强制保存并退出 :w <文件路径> | 另存为 :x | 保存并退出 :wq | 保存并退出文件路径>
删除文本
按键 | 说明 — |– x | 删除游标所在的字符 X | 删除游标所在前一个字符 Delete | 同x dd | 删除整行 dw | 删除一个单词(不适用中文) d$ 或D | 删除至行尾 d^ | 删除至行首 dG | 删除到文档结尾处 d1G | 删至文档首部
命令之前加上数字,表示删除多行,比如: 2dd 表示一次删除2行
命令重复执行
普通模式下输入x,删除第一个字符,输入.(小数点)会再次删除一个字符,除此之外也可以重复dd的删除操作
执行指定次数相同的命令
进入普通模式输入N
- 输入10x,删除10个连续字符
- 输入3dd,将会删除3行文本
- 在普通模式下,还可以使用dw或者daw(delete a word)删除一个单词,所以可以很容易的联想到dnw(n替换为相应数字) 表示删除n个单词
行间跳转
按键 | 说明 |
---|---|
nG | 游标移动到第n 行(如果默认没有显示行号,进入命令模式,输入 :set nu 以显示行号) |
gg | 游标移动到第一行 |
G | 游标移动到最后一行 |
行内跳转
按键 | 说明 — |– w | 下一个单词的开头 e | 当前单词的结尾 b | 到前一个单词的开头 ge | 到前一个单词的结尾 0或^ | 到行头 $ | 到行尾 f<字母> | 向后搜索<字母>并跳转到第一个匹配的位置 F<字母> | 向前搜索<字母>并跳转到第一个匹配的位置字母>字母>字母>字母>
复制及粘贴文本
- 普通模式中使用y 复制
- yy 复制游标所在的整行(3yy表示复制3行)
- y^ 复制至行首,或y0,不含光标所在的字符
- y$ 复制至行尾,含光标所在的字符
- yw 复制一个单词
- y2w 复制两个单词
- yG 复制至文本末
- y1G 复制至文本开头
- 普通模式中使用p 粘贴
- p(小写)代表粘贴至光标后
- P(大写)达标粘贴至光标前
- 剪切及粘贴
- dd 删除命令就是剪切,每次 dd 删除文档内容后,便可以使用 p 来粘贴,
- 交换上下行:ddp
替换和撤销命令
按键 | 说明 — |– r+<待替换字母> | 将游标所在字母替换为指定字母 R | 连续替换,知道按下 ESC cc | 替换整行,即删除游标所在的行并且进入插入模式 cw | 替换一个单词,即删除一个单词并进入插入模式 C | 替换游标以后至行末 ~ | 反转游标所在字母大小写 u{n} | 撤销一次或n次操作 U | 撤销当前行的所有修改 Ctrl+r | redo , 即撤销undo 的操作待替换字母>
查找
快速查找
普通模式下输入 / 然后键入需要查找的字符串 按回车后就会进行查找。 ? 与/ 功能相同,只不过 ? 是向上而 / 是向下查找。 进入查找之后,输入n 和 N 可以继续查找。 n是查找下一个内容,N查找上一个内容
高级查找
- 普通模式下输入*寻找游标所在处的单词
- 普通模式下输入#同上,但 # 是向前(上)找,*则是向后(下)找
- 普通模式下输入g*同* ,但部分符合该单词即可
- 普通模式下输入g#同# ,但部分符合该单词即可
以上查找n,N 的继续查找命令依然可以用