【问题标题】:Vim - delete up to searched stringVim - 删除搜索到的字符串
【发布时间】:2012-01-25 23:55:25
【问题描述】:

是否有一个 VIM 命令/组合键可以执行 dt/mystring 之类的操作(不起作用)?

dta 尝试在 当前行 上查找字母 a,但我想删除所有搜索到的字符串(可能在其他行)。

【问题讨论】:

    标签: vim keyboard shortcut


    【解决方案1】:

    试试这个

    d/mystring
    

    它不会删除字符串本身。

    【讨论】:

    • 这样就完成了。删除后,我必须按 :noh 删除搜索词的突出显示。有没有办法删除直到搜索字符串而不突出显示进一步的搜索?
    【解决方案2】:

    d/mystring 删除直到mystring 的所有内容

    编辑:哇,太慢了:/

    【讨论】:

      【解决方案3】:

      Greg Reynolds 提供了一个可行的解决方案。
      或者,如果已经定义了搜索模式,请使用:

      dn
      

      n 动作是排他的,所以你的图案的第一个字符不会被吃掉。

      您可以使用Easymotion 插件的另一种替代方法<leader><leader>t<first letter of pattern(通常领导者是反斜杠);那么模式之前的字符将变成一个字母;输入这封信就完成了。

      【讨论】:

        【解决方案4】:

        如何在不搜索突出显示和弄乱/ 缓冲区的情况下做到这一点:

        d:echo search('yourpattern')<CR>
        

        例如,删除直到以'function'开头的行:

        d:echo seatch('^function')<CR>
        

        【讨论】:

          猜你喜欢
          • 2013-06-16
          • 1970-01-01
          • 1970-01-01
          • 2015-11-05
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-10-31
          • 1970-01-01
          相关资源
          最近更新 更多