【问题标题】:VIM - Update multiple files only in the result of searchVIM - 仅在搜索结果中更新多个文件
【发布时间】:2016-09-01 19:34:31
【问题描述】:

这是我的问题:

我有一个大型项目,从ag searcher 中过滤掉了很多文件和目录。

我需要更新多个文件,但只有我感兴趣的文件是可供搜索者使用的文件,所以我想做的是 :argdo:buffdo 但在从 ag 搜索请求收到的集合上.

  1. :Ag something_to_change -> 结果包含 10 个文件的列表
  2. grep 此结果并仅对这 10 个文件执行替换命令

我想它看起来像::Ag something_to_change | :args | :argdo %s/something_to_change/somthing_changed/ge | update

感谢您对此的任何建议

【问题讨论】:

标签: vim replace macvim


【解决方案1】:

如果您使用的是相当新的版本(7.4.858 及更高版本),您可以使用内置的:cdo:cfdo 命令:

:Ag something_to_chnage
:cfdo %s/something_to_change/somthing_changed/ge

请参阅 :help :cdo:help :cfdo

如果你不这样做,我的插件 vim-qf 带有 :Doline:Dofile,它们的作用与 :cdo:cfdo 相同。

【讨论】:

  • 太棒了,有帮助!,谢谢!
猜你喜欢
  • 2016-02-06
  • 1970-01-01
  • 1970-01-01
  • 2011-05-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-30
  • 2019-05-30
相关资源
最近更新 更多