我有一些$somePaths4个文件夹的数组.我想在VIM中打开这个文件夹中的一些文件.以下内容在选项卡中打开它们.
vim -p `for i in ${somePaths[@];}; do echo $i/src/main.cpp; done`
Run Code Online (Sandbox Code Playgroud)
实际上我想将这些文件放在拆分窗口(十字架)中.怎么做?
除此之外-p,Vim也提供了-o和-O命令行参数的水平/垂直分割.不幸的是,他们不能混在一起.要构建自己的自定义窗口布局,必须通过显式窗口放置命令-c.这个例子
$ vim 1 -c 'bel vsplit 2' -c '1wincmd w' -c 'bel split 3' -c '3wincmd w' -c 'bel split 4'
Run Code Online (Sandbox Code Playgroud)
创建一个如下所示的布局:
+-----------+-----------+
| | |
| | |
| | |
|1 |2 |
+-----------+-----------+
| | |
| | |
| | |
|3 |4 |
+-----------+-----------+
Run Code Online (Sandbox Code Playgroud)
要继续将文件列表作为一个块传递,可以使用缓冲区编号单调增加的事实,并在命令中引用缓冲区编号:
$ vim -c 'bel vert sbuf 2' -c '1wincmd w' -c 'bel sbuf 3' -c '3wincmd w' -c 'bel sbuf 4' a b c d
Run Code Online (Sandbox Code Playgroud)