全站点搜索和替换 vim cdo 无缓冲区

site-wide search and replace vim cdo no buffers

我最近切换到 vim,了解到您可以使用 AG 执行搜索。

我总是这样

:Ag foo

并且,在快速列表中 window

:cdo s/foo/bar/g |update

但是,它打开了buffers.How中的所有文件,我可以不让Vim打开缓冲区,而是让vim替换单词吗?

使用 :cfdo 并关闭您打开和修改的所有缓冲区:

:cfdo :bd

所以工作流程如下:

:Ag foo
:cdo %s/bar/baz/g | update 
:cfdo :bd

虽然 :cdo 遍历 quickfix 列表中的每个条目,但 :cfdo 遍历列表中引用的每个文件。