快速删除
di和da结合其他字符或文本对象一起使用。比如结合单引号’,双引号",`,小括号
(
或)
,大括号{
或}
,方括号[
或]
,尖括号<
或>
,s操作句子,p操作段落,t操作html/xml的标签等。
x # 删除光标所在字符,可先按数字向前删除多个字符,也可配合可视模式删除多个字符或多行
X # 删除光标前一个字符,可先按数字向后删除多个字符,也可配合可视模式删除多行
dw # 向前删除单词,包括用于分割单词的空格,先按数字向前删除多个单词
db # 向后删除单词,包括用于分割单词的空格,先按数字向后删除多个单词
dd # 删除行,先按数字删除多行
d0 # 删除本行光标所在位置前面的所有字符,不包括光标所在位置
d$ # 删除本行光标所在位置及其后面的所有字符
D # 删除本行光标所在位置及其后面的所有字符
di+字符 # 删除指定字符里面的内容,比如{,(,<,]字符等
da+字符 # 删除指定字符及其字符里面的内容
df, # 从光标所在字符开始删除,直到找到逗号为止,因为f为行内搜索移动,所以f,是在移动到本行逗号处
dt, # 从光标所在字符开始删除,直到找到逗号为止(光标移动到逗号的前一个字符),原理与f行内搜索移动相同
m,nd # 按回车,删除a-b行文本内容
1GDG # 删除全文内容
Gdgg # 删除全文
d作为操作符(operator)表示删除,接在操作符d后面的动作(motion)表示删除的范围。
比如dfz表示从光标位置开始删除,直到遇到找到第一个z字符为止,z字符也会被删除。dtz表示从光标位置开始删除,直到遇到第一个z字符为,z字符不会被删除。将z字符替换为其他字符也是一样的道理。
结合数字一起使用,删除多个字符,多个单词,多行,多个文本对象。