Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
vim:搜索替换所有可写缓冲区_Vim_Replace - Fatal编程技术网

vim:搜索替换所有可写缓冲区

vim:搜索替换所有可写缓冲区,vim,replace,Vim,Replace,所以 可以替换整个缓冲区 然而,假设我加载了多个vim缓冲区,我想对所有可写的缓冲区执行a:s;在vim中是否有这样做的方法?请查看。还有windo和tabdo。请记住,默认情况下Vim不会自动写入,因此对于跨缓冲区的搜索/替换命令,您需要启用自动写入。由于我不能留下评论,我将重复Brian所说的,并在我的2美分中添加内容 我相信你要找的命令是: 1GvG:s/..../g 注意:这将在进行更改后写入每个文件,因此请确保您已准备就绪 如果“自动写入”处于启用状态,您应该能够删除命令末尾的“|:

所以

可以替换整个缓冲区


然而,假设我加载了多个vim缓冲区,我想对所有可写的缓冲区执行a:s;在vim中是否有这样做的方法?

请查看。还有
windo
tabdo
。请记住,默认情况下Vim不会自动写入,因此对于跨缓冲区的搜索/替换命令,您需要启用自动写入。

由于我不能留下评论,我将重复Brian所说的,并在我的2美分中添加内容

我相信你要找的命令是:

1GvG:s/..../g
注意:这将在进行更改后写入每个文件,因此请确保您已准备就绪


如果“自动写入”处于启用状态,您应该能够删除命令末尾的“|:w”。

具有支持此功能的功能。github上也有一个

顺便说一句,您可以对整个缓冲区执行
%s
。谢谢您的提问!这对我来说是一个烦人的问题(但不要太烦人,否则我也会在这里问的)如果你不想写改变的话,把
|:w
放在图片之外就足够了。vim wiki上有一个专门的页面,上面有更多关于尾随
|:w
@AdrianoVaroliPiazza的选项。它在没有
|:w
的情况下是现成的,但是
vi
需要。
:bufdo :%s/..../g | :w