在Vim中向后删除直到某个字符

29

dt 删除到下一个逗号。

a, b, c[,] d, e

dt,

a, b, c[,] e

如何执行相反方向的命令以获得以下结果:

a, b, d, e

1
如果你输入 dt,,你得到的是 a.. c,, e,你真正想要的是什么?你的例子并不像你所说的那样工作。你是指 df, 吗? - Kent
1
在正常模式下,光标始终位于一个字符上。我建议您将问题编辑为以下内容,以便更清楚:a,b,c[,] d,e - romainl
光标位于逗号字符上。 - Sathish
1个回答

70
通常在Vim中,大写字母会执行相反方向的动作。因此,dT,将向后搜索。但是,您需要使用2dT,以便删除第一个逗号。
出于同样的原因,您需要使用df,而不是dt,来删除给定示例中的逗号。

4
我不确定是否按照 OP 的要求做,因为他关于“dt”的示例是错误的(“dt”本身不会删除逗号)。也许“df”和“dF”更接近。 - Anton Kovalenko
@PrinceGoulash df,包括结尾的“,”。dt是正向工作的内容。dF则是反向工作的内容。谢谢。 - Sathish

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接