2017-03-01 111 views
0

我有一系列查找和替换操作,我想在许多不同的文件上执行。我不想手工运行它们,而是希望将它们放入脚本中并运行它们。我已经完成了这个工作,将所有的搜索和替换命令放在一个文件中,我们把它命名为instructions.vim如何在VIM的开放缓冲区上运行vim脚本

现在,我想能够在vim中运行这个脚本,上。我怎么做? Google会产生诸如autocmd之类的东西,它将脚本运行(我认为)附加到键盘快捷键。我不想这样做。我只想运行我的脚本。但似乎没有任何有用的信息可以帮助解决这个问题。

任何提示?谢谢!

+0

什么bash脚本? – pudility

+0

我想在一个打开的vim文件里面运行这个脚本。我不认为bash会为此工作? – bgenchel

+0

哦,我的坏,我想你在哪里试图做别的 – pudility

回答

2

你只是一个Ex命令读了剧本:

source *file_name*
1

首先将您的一系列替换记录为宏(例如,将宏保存为a)。 然后将所有想要更改的文件加载到argo列表中(使用支持通配符的:arg命令,例如:**/*。txt)。最后,应用的宏文件,并确保书写更改后的文件:

:argdo normal @a | w 

如果你已经在每行一个命令的格式保存文件的命令(例如::%s/x/y/g),然后您可以将argdo与源一起使用:

:argdo source file | w 

我更喜欢在示例文件上测试我的更改,然后将这些更改保存为宏。像这样的工作流程在进行广泛的彻底改变之前提供了一个改进步骤。

+0

以上是正确的所有文件,但这种解决方案是非常好的。我不知道如何将文件保存为宏? – bgenchel