我正在分析Linux中数千个测试用例的回归。因此,我想一次在gvim
中打开许多文件(失败)。
我有一个文件,如下所述,在目录中指定100个以上的文件。我想在gvim
中打开所有这些文件(在单个gvim
中)。
./Linux2/Lint/case1/DIFF
./Linux2/Lint/case4/DIFF
./Linux2/Lint/case10/DIFF
./Linux2/range/case1/DIFF
./Linux2/operator/case7/DIFF
这样的线条。
是否有任何方法可以通过某些导航机制在gvim
中的所有这些文件中打开文件。
我知道可以使用
gvim file1 file2 .....
但是,对于100多个文件,这并不容易。
我需要在gvim
中,而不是vim
。
我只使用了find . -name DIFF | xargs vim
,并且能够使用:next
和:prev
和:buffers
只有丑陋的位是当我击中大约1500个文件时,我会得到两个vim的调用,并且必须在转到下一个1500之前完成编辑第一个1500个文件(由于Xargs的工作方式)。
另一个选项是使用VIMS错误文件解析。在文件中列出所有文件,其中包含有关行和错误的信息,打开该文件并在该缓冲区中运行:cbuffer
(它将关闭错误文件并将您移至第一个列出的ERRO)。:copen
将以 QuickFix列表打开错误列表。然后,您可以使用常用的:cn
和:cp
在QuickFix列表中向前和向后移动(QuickFix列表中的<CR>
也可以工作。类似的东西应该为您开箱即用。
:./Linux2/Lint/case1/DIFF:1: Not really an error
:./Linux2/Lint/case2/DIFF:1: Not really an error
:./Linux2/Lint/case3/DIFF:1: Not really an error
现在可以改进,因为VIMS错误解析是灵活的。您可以使用set errorformat=%f:%l: %m
删除领先的:
的要求,也可以使用set errorformat=%f
的原始文件列表。
听起来您想从文件中产生命令行参数。您可以在bash
中的命令替换。
gvim $(cat ListOfFiles.txt)