问题描述
我知道vi有快捷键来删除具有各种选项的字符,单词和行。
但是,我找不到这个:
-
从光标删除到下一个指定的字符
例如,我可能键入du"
,希望编辑器“删除,直到找到下一个"
字符”
我知道的最接近的是d9w
,其中9
是要删除的单词数。
有谁知道这是否可能?
最佳解决办法
使用dt
c
,其中c是任何字符,例如,对于你,你想要dt
"
这将删除最多但不包括c。
如果你有:
delete until exclamation point!
光标位于第一个空格处,然后键入dt
!
,您将得到:
delete!
还有df
c
。
这将删除最多并包括c。
在上面的同一个例子中使用df
!
会给你:
delete
几乎任何”motion”都可以用于d
,c
,y
和类似的命令。
次佳解决办法
-
向前删除字符’X’ type
dtX
-
要通过字符’X’类型
dfX
向前删除 -
向后删除字符’X’类型
dTX
-
通过字符’X’向后删除类型
dFX
第三种解决办法
输入dt#(不是:命令,使用它就像G一样的运动)
将从光标删除,直到不包括#。你可以用#代替任何字符。
第四种办法
它看起来像@Arcege已经回答了这个问题,但我做了d/l
删除,直到字符l
;其他角色也会起作用。
第五种办法
w
移动到以下单词。 l
移动到以下字符。
所以它是d9l
删除接下来的9个字符。