对于真正的vim用户,插入模式是不存在的。在普通模式下有更多的操作命令。
1、单个字符的删除操作
在普通模式下使用x删除单一字符和在插入模式下的delete键的效果一样。
2、更多删除命令
使用删除操作符d的删除命令的格式: d motion
d是Delete(删除)的意思,motion即指定要删除的对象,所以这个命令可以很灵活!
motion其实是一些表示操作范围的指令,比如:
| 按 键 | 含义 |
| 0 | 将光标定位到行首的位置 |
| ^ | 同上 |
| $ | 将光标定位到行尾的位置 |
| b | 将光标定位到光标所在单词的起始处 |
| e | 将光标定位到光标所在单词的结尾处 |
| w | 将光标定位到下一个单词的起始处(注意,是光标所在单词的下一个单词) |
| gg | 将光标定位到文件的开头 |
| G | 将光标定位到文件的结尾 |
没错,在vim普通模式下使用以上的按键来移动光标,比单纯多点击几次h、j、k、l按键省心多了。
将d命令跟他们结合,无疑是如虎添翼、珠联璧合、相得益彰
| 按键 | 含义 |
| d0 | 删除光标从当前位置(不包含)到该行行首的所有字符 |
| d^ | 同上 |
| d$ | 删除从光标当前位置(包含)到该行行尾的所有字符 |
| db | 删除从光标当前位置(不包含)到单词起始处的所有字符 |
| de | 删除从光标当前位置(包含)到单词结尾处的所有字符 |
| dw | 删除从光标当前位置(包含)到下一个单词起始处的所有字符 |
| dh | 删除光标前边一个字符 |
| dl | 删除光标指定的字符 |
| dj | 删除光标所在行以及下一行的所有字符 |
| dk | 删除光标所在行以及上一行的所有字符 |
| dd | 删除光标所在行的字符 |
| dgg | 删除光标所在行到开头的所有字符 |
| dG | 删除光标所在行的字符 |
3、数字的奥义
vim还可以用数字干更多的事,比如平时点一下h是将光标向左移动一格,而在其前边输入数字3,即3h这是向前移动3格,以此类推3j则是将光标向下移动三行,3w则是将光标三个单词后的开始位置....
同样的,d3h表示删除光标前的3个字符,d3j表示删除光标所在行以及下边3行的所有字符,而d3w则表示向后删除当前光标到后边第三个单词前的所有字符
4、撤销和恢复
u 表示撤销最后一次修改
U 表示撤销对整行的修改
Ctrl+r 快捷键可以恢复撤销的内容
备注:上边所有的“删除”操作并不是真的删除,它们事实上是存放在VIM的一个缓冲区(vim称之为寄存器)中,相当于Windows的剪切功能!!
本文介绍Vim编辑器中高效使用的删除命令及其组合,包括单字符删除、多字符及单词删除等,并讲解如何利用数字增强操作效果,以及撤销和恢复的操作方式。
1033

被折叠的 条评论
为什么被折叠?



