我主要在网站上工作,有时我需要为后端显示3或4个缓冲区,同时为前端显示3或4个缓冲区。标签就在这里,但缓冲区是混合的。我知道我有点挑剔,但有没有办法创建缓冲区"集合"从标签?它可以通过制表符限制打开的缓冲区数量,并且更容易从一个(缓冲区)切换到另一个缓冲区。
答案 0 :(得分:3)
我非常广泛地使用制表符来处理不同的目录(有时是4个以上的标签页)
结合像CtrlP
这样的插件和:lcd
命令,您可以有效地拥有多个工作区(每个工作区都有不同的目录),并且心理维护最少。
:lcd
命令仅更改当前窗口的目录,因此我使用它的方式如下。
:tabnew
:lcd ~/somewhere/else
ctrl + p
(CtrlP
的默认绑定打开当前目录中的文件)并找到要编辑的文件:tn
和:tp
在标签之间切换(显然我有很多关键字绑定,因为我做了很多切换)所以基本上每个选项卡都有自己的工作目录,并使用ctrl + p
在文件/缓冲区之间切换。
答案 1 :(得分:2)
是的,您可以拥有窗口本地参数列表:
$ vim
:arglocal foo bar baz
:tabnew
:arglocal arthur robert charles
现在,第一个标签页中的:args
应输出:
[foo] bar baz
,并在第二个标签页中:
[arthur] robert charles
这种方法的一个潜在问题是,你以某种方式限制于特定于参数的命令:
:n[ext]
:prev[ious] (or :N[ext])
:fir[st] (or :rew[ind])
:la[st]
:argl[ocal]
和特定于标签的命令:
:tabn[ext] (or gt)
:tabp[revious] (or :tabN[ext]) (or gT)
:tabfir[st] (or :tabr[ewind])
:tabl[ast]
如果你只使用全局参数列表:b <tab>
,:bn/:bp
的循环特性......),它就不像更通用的命令那样灵活。
那就是说,你仍然有可能在vim.org上寻找一个插件。