我希望同时打开NERDTree和TagList,但我不需要让它们拥有整个屏幕高度。相反,我想让它们在一个垂直分割中水平分割。
更具体地说,我希望能够打开一个,比如NERDTree,让它占据屏幕的整个高度。然后当我打开TagList时,让它与已经打开的NERDTree窗口水平分割。
有办法做到这一点吗?可能甚至不是“特定于这两种插件”的方式吗?
答案 0 :(得分:8)
NERDTree和Taglist不会在拆分内部打开。
假设你左边有一个分割缓冲区(例如源代码),右边有Taglist。
您可以将它放在一个函数中,并使用映射调用它:
NERDTree " open NERDTree
wincmd J " move NERDTree to the very bottom
wincmd k " move the cursor to the above split (the source code buffer)
wincmd H " move the split to the very left
wincmd l " move the cursor back to the NERDTree split
resize 20 " resize the split height to 20
exe 'vertical resize ' . g:NERDTreeWinSize " reset the split width
这很狡猾,但它确实有效。当分割在屏幕上跳跃时,你会看到一个短暂的视觉故障。
答案 1 :(得分:1)
横向拆分:
:split
垂直分割:
:vsplit
然后,当您按照自己喜欢的方式拆分屏幕时,在所需的框架内打开nerdtree。 (或者您可以使用@Vivek Pandey建议的缩写:sp:vsp)。
答案 2 :(得分:1)
我在这里的重复帖子中发布了一个解决方案: NERDTree & TList in
它涉及编辑'taglist.vim'脚本,以便在打开时添加新的分割选项。