vim - 如何从命令行打开多个选项卡中的多个窗口?

时间:2014-08-22 21:18:00

标签: vim tabs window vi

我尽力找到答案;如果我错过了,我会道歉。

一些快速背景:我正在查看protocol parsers in Bro,特别是那些使用BinPAC创建的内容。在我感兴趣的每个文件夹中,我想要打开多个文件,使用命名约定{protocol-name} -protocol.pac和{protocol-name} -analyzer.pac。查看每个协议文件的最佳方法是并排。

现在,我想要做的是为每对打开一个单独的标签。也就是说,第一个选项卡在一个窗口中有{protocol1} -protocol.pac,在相邻窗口中有{protocol1} -analyzer.pac,第二个选项卡在一个窗口中有{protocol2} -protocol.pac,{ protocol2} -analyzer.pac在相邻窗口中,依此类推。

我试图找到一种方法,在命令行的一个命令中为所有相关文件夹执行上述操作。我知道如何在单独的选项卡或单独的窗口中打开所有相关文件,但我无法找到一种方法来组合这些以获得我想要的行为。我可以手动执行此操作,即打开一对,创建一个新选项卡并打开另一对等,但这是令人讨厌和重复的,所以如果可能的话,我宁愿在一个命令中执行此操作。

任何人都知道如何做到这一点?或者,如果它甚至可能?

1 个答案:

答案 0 :(得分:0)

应该可以使用vim的--remote-tab选项

首先启动vim服务器

     $ gvim --servername MYSERVER &

现在将您的协议文件逐个添加到vim服务器,同时添加将文件名中的-protocol替换为-analyzer并在vs[plit]中打开它以获取相应的分析器文件

     $ find  . -name \*.pac -exec gvim  --servername MYSERVER --remote-tab "+execute 'vs ' . substitute(expand('%:p'), '-protocol', '-analyzer', '')"  {} \;

有关详细信息,请参阅http://vimdoc.sourceforge.net/htmldoc/remote.html

希望这是有帮助的