默认都是在一般模式下的操作,加:表示命令模式
| dd | 剪切一行 | |
| d$ | 删除光标至行末的所有文本 | |
| dw | 当前位置到单词末尾空白处删除 | ndw:删除n个单词 |
| de | 当前位置到单词最后一个字符删除 | |
| x | 向后删除字符 | |
| X | 向前删除字符 | |
| u | 撤销操作 | |
| Ctrl+r | 重做操作 | |
| U | 撤销对整行的修改 | |
| i | 光标处编辑 | |
| I | 光标所在行第一个非空处编辑 | |
| o | 下一行插入新行 | |
| O | 上一行插入新行 | |
| a | 后一个字符处编辑 | |
| A | 行尾处编辑 | |
| n<Enter> | 往下移动n行 | |
| nw | 后移n个单词 | |
| ne | 后移n个单词,到末尾字符 | |
| r | 替换当前字符 | |
| R | 替换多个字符 | |
| :! cmd | 执行外部命令 | cmd 指一条命令 |
| :w filename | 另存为 | |
| :r filename | 插入另一个文件的内容 | |
| :r! cmd | 插入外部命令的输出 | |
| :wq | 保存并退出 | :x表示仅在需要时保存,ZZ不需要输入冒号并回车 |
| :s/old/new/ | 把该行第一个old替换成new | 末尾加g表示该行符合条件的old全部替换, s前加%表示文件全局替换 |
| :#,#s/old/new/ | 两行之间替换 | :1,$s/old/new/ 表示第一行到最后一行替换 |
| /pattern | n下一个/N上一个 | |
| ?pattern | n上一个/N上一个 | |
| t, | 向后找逗号前的字符 | T, 指向前找逗号后的字符 |
| 附: 《简明Vim练级攻略》 、《Coming Home to Vim》 | ||