我想知道是否有办法用Vim打开多个文件,但是特定行号上的每个文件.我解释 :
我经常使用语法:vim my/way/too/far/file +120以便在第120行编辑此文件,因为gcc告诉我:)
现在我正在寻找的是同时为多个文件执行此操作的方法!
当然,vim file1 + xx file2 + xx ...不起作用(+选项只影响第一个文件......不要问我为什么)
所以,如果有人知道解决这个问题的方法吗?我没有在联机帮助页中找到它...
顺便说一句,有时,file1可能与file2相同的文件...
我刚刚写了https://gist.github.com/xim/6123691
感谢Pikrass的想法=)
编辑:
正如claferri所说,使用'+ tabnew ...'将你限制为10个文件.更新了要使用-S的要点.
vim函数将构建一个包含vim脚本的字符串($ script),该脚本在选项卡中以适当的行打开文件.使用示例进行解释,这可以通过更改vim -R file1:42 file2 file3:1337为vim -S <script> -R file1 file2 file3- 包含vim脚本来完成,在这种情况下:
tab all
tablast
1337
tabprev
tabprev
42
Run Code Online (Sandbox Code Playgroud)
所以:我们正常打开文件,然后执行脚本:跳转到最后一个选项卡,然后跳转到每个文件的相应行,同时移向第一个文件.
这个hack只是经过适度测试,对任何错误发表评论.
重新编辑:
修复了脚本,所以即使是像vim -R 1:3 "a file" foo -- -- "some other file":34 -R预期的那样工作的疯狂示例.