![删除带有分隔符但不包含周围空格的部分(vim)](https://linux22.com/image/1330457/%E5%88%A0%E9%99%A4%E5%B8%A6%E6%9C%89%E5%88%86%E9%9A%94%E7%AC%A6%E4%BD%86%E4%B8%8D%E5%8C%85%E5%90%AB%E5%91%A8%E5%9B%B4%E7%A9%BA%E6%A0%BC%E7%9A%84%E9%83%A8%E5%88%86%EF%BC%88vim%EF%BC%89.png)
在以下情况下,我想删除"TWO"
:
foobar("ONE", "TWO");
// ^-- cursor here
于是我按下da",结果是:
foobar("ONE",);
// ^-- cursor here
我该如何改变它以不删除逗号附近的空格?或者我应该使用什么键?我还没有发现这种行为(删除空格)是我想要的情况。
答案1
使用2di"(或d2i",效果相同)。这是将 count 与i"text-object 结合使用的特殊情况,它会删除引号内的所有文本(包括引号),按照您想要的方式执行。
也可以看看:help iquote
。
您可以在 中找到有关删除空格的详细说明:help aquote
。对于引号中的内容,它可能不是很有用,但是当您使用句子或段落文本对象时,删除尾随空格或在没有尾随空格的情况下的前导绝对有意义。为了保持一致性,可以对所有文本对象进行相同的行为。