vim filename→命令模式→Ins键→插入替换→Esc键→命令模式
| 命令 | 作用 |
| 插入命令 | |
| a | 标后插入 |
| A | 行末插入 |
| i | 标前插入 |
| I | 行首插入 |
| o | 标下插行 |
| O | 标上插行 |
| 定位命令 | |
| 左(h) | 左移一字符 |
| 下(j) | 下移一行 |
| 上(k) | 上移一行 |
| 右(l) | 右移一字符 |
| $ | 移至行尾 |
| 0 | 移至行首 |
| H | 移至上端high |
| M | 移至中央middle |
| L | 移至下端low |
| 定位命令 | |
| :set nu | 设置行号 |
| :set nonu | 取消行号 |
| gg | 到第一行 |
| G | 到最后一行 |
| :n(nG) | 到第n行 |
| 删除命令 | |
| x | 删除光标所在处字符 |
| nx | 删除光标所在处后n个字符 |
| dd | 删除光标所在行 |
| ndd | 删除n行 |
| dG | 删除光标所在行至文本末尾 |
| D | 删除光标所在处至行尾 |
| :n1,n2d | 删除指定范围行 |
| 复制剪切命令 | |
| yy(Y) | 复制当前行 |
| nyy(nY) | 复制当前行以下n行 |
| dd | 剪切当前行 |
| ndd | 剪切当前行以下n行 |
| p | 粘贴当前行下一行 |
| P | 粘贴当前行上一行 |
| 搜索替换命令 | |
| /pattern | 匹配指定字符串 |
| N | 上一个匹配 |
| n | 下一个匹配 |
| :set ic | 忽略大小写 |
| :set noic | 取消忽略大小写 |
| :%s/old/new/g | 全文替换 |
| :n1,n2s/old/new/g | 局部替换 |
| 保存退出 | |
| :q | 退出 |
| :w [路径] | 保存 |
| :wq(快捷键ctrl+zz) | 保存并退出 |
| :q! | 不保存退出 |
| 其他 | |
| :r 文件名 | 导入文件 |
| :!命令 | 在vim中执行命令 |
|
map 快捷键 触发命令 |
定义快捷键 例如: :map ^p I#<ESC> 注释 :map ^b 0x 取消注释 (ctrl+v ctrl+p) |
| unmap 快捷键 触发命令 | 取消快捷键 |
| :n1,n2S/^/#/g | 连续行#注释(^表示行首) |
| :n1,n2S/^#/ /g | 连续行取消#注释 |
| :n1,n2S/^////g | 连续行//注释 |
| :ab jackmail xupeng@ibcas.ac.cn | 替换 |
| :unab jackmail xupeng@ibcas.ac.cn | 取消替换 |