VIM:从当前位置删除直到空格

时间:2009-10-22 15:08:51

标签: vim

通常在开发时,我遇到了一个嵌套对象,我想从代码中删除这样的代码:

htmlDoc.WriteLine("<b><h3>" + this.cbAllSyncs.SelectedItem.ToString() + "</h3></b>");

我想删除的部分是:

this.cbAllSyncs.SelectedItem.ToString()

我知道我可以计算单词和句点的数量并输入 7 d w 从我当前的光标位置删除”。但是,我喜欢做的事情就是不用计算并用一个命令删除空间。这可能吗?

6 个答案:

答案 0 :(得分:303)

尝试 d t space 。通常, d t x 从当前位置删除直到x之前。只需 t x 将光标移动到当前行中的字符x之前。

要删除最多并包含空格,请使用 d f space

答案 1 :(得分:62)

你可以使用 d W d E 作为@glenn建议我想删除空间本身。

WORD(大写W)由一系列非空白字符组成,用白色分隔 空间。

查看word motions

答案 2 :(得分:19)

一种可能的解决方案是使用删除搜索。

所以输入d/<space>,vim将删除,直到它到达空格。

答案 3 :(得分:13)

如果要从WORD中的任何地方中删除,并在单个命令中,只需使用 daW

(如果你想限制一个单词,你当然可以使用 d a w

我使用它非常多,因为它不需要移动到单词的开头(在你的情况下)

答案 4 :(得分:2)

d t space 是您问题的答案,但 d f + 看起来会更好地解决您的问题。

答案 5 :(得分:1)

  • 将当前位置删除为特定字符示例“

    dt"
  • 删除位置光标所在的单词,直到单词的结尾

    dw
  • 删除光标所在的整个单词,无论光标在单词上的位置如何,这也会使您进入插入模式以便立即插入。

    diw